Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Können wir einen Fremdschlüssel haben, der in keiner anderen Tabelle ein Primärschlüssel ist?

Ja - Sie können einen Fremdschlüssel haben, der auf einen eindeutigen Index in einer anderen Tabelle verweist.

CREATE UNIQUE INDEX UX01_YourTable ON dbo.YourTable(SomeUniqueColumn)

ALTER TABLE dbo.YourChildTable
   ADD CONSTRAINT FK_ChildTable_Table
   FOREIGN KEY(YourFKColumn) REFERENCES dbo.YourTable(SomeUniqueColumn)