sql >> Databasteknik >  >> RDS >> Sqlserver

Främmande nyckel till icke-primär nyckel

Om du verkligen vill skapa en främmande nyckel till en icke-primär nyckel, MÅSTE det vara en kolumn som har en unik begränsning.

Från Books Online:

En FOREIGN KEY-begränsning behöver inte bara vara länkad till en PRIMARYKEY-begränsning i en annan tabell; den kan också definieras för att referera till kolumnerna i en UNIK begränsning i en annan tabell.

Så i ditt fall om du gör AnotherID unik, kommer det att vara tillåtet. Om du inte kan tillämpa en unik begränsning har du tur, men det här är verkligen vettigt om du tänker efter.

Fast, som har nämnts, om du har en helt bra primärnyckel som kandidatnyckel, varför inte använda den?



  1. SQL Server 2016 Temporal Table Query Plan Beteende

  2. Hur kan jag få upp enum möjliga värden i en MySQL-databas?

  3. Grundläggande SQL-frågor

  4. Förhindrar SQL-injektion i Node.js