Nej - en begrænsning er også et databaseobjekt, og derfor skal dens navn være unikt.
Prøv at tilføje f.eks. tabelnavnet til din begrænsning, på den måde vil det være unikt.
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
)
Vi bruger grundlæggende "FK_"(undertabel)_(overordnet tabel)" til at navngive begrænsningerne og er ret tilfredse med denne navnekonvention.
Oplysninger fra MSDN
At begrænsningsnavne skal være unikke for skemaet (dvs. to forskellige skemaer i samme database kan begge indeholde en begrænsning med samme navn) er ikke eksplicit dokumenteret. I stedet skal du antage, at identifikatorerne for databaseobjekter skal være unikke i det indeholdende skema medmindre andet er angivet . Så begrænsningsnavnet er defineret som:
Sammenlign dette med navnet på et indeks :
som eksplicit indsnævrer identifikatorens omfang.