Nie - ograniczenie jest również obiektem bazy danych, dlatego jego nazwa musi być unikalna.
Spróbuj dodać np. nazwę tabeli do twojego ograniczenia, dzięki czemu będzie unikalna.
CREATE TABLE BankAccount
(
BankAccountID INT PRIMARY KEY,
EmployerCode VARCHAR(20) NOT NULL,
Amount MONEY NOT NULL,
CONSTRAINT FK_BankAccount_Employer
FOREIGN KEY (EmployerCode) REFERENCES Employer
)
Zasadniczo używamy "FK_"(tabela podrzędna)_(tabela nadrzędna)" do nazywania ograniczeń i jesteśmy całkiem zadowoleni z tej konwencji nazewnictwa.
Informacje z MSDN
To, że nazwy ograniczeń muszą być unikalne dla schematu (tj. dwa różne schematy w tej samej bazie danych mogą zawierać ograniczenie o tej samej nazwie) nie jest wyraźnie udokumentowane. Raczej musisz założyć, że identyfikatory obiektów bazy danych muszą być unikalne w obrębie schematu zawierającego o ile nie określono inaczej . Nazwa ograniczenia to zdefiniowana jako:
Porównaj to z nazwą indeksem :
co wyraźnie zawęża zakres identyfikatora.