Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Relacionamento de chave estrangeira com chaves primárias compostas no SQL Server 2005


Como a Tabela2 tem uma chave primária composta (FileID, FileType) , qualquer referência a ele também deve incluir ambas as colunas .
ALTER TABLE dbo.Table1
  ADD CONSTRAINT FK_Table1_Table2
  FOREIGN KEY(FileID, FileType) REFERENCES Table2(FileID, FileType)

A menos que você tenha uma restrição/índice exclusivo no Table2.FileID campo (mas se sim:por que não é este o PK?), você não pode criar um relacionamento FK apenas para partes do PK na tabela de destino - simplesmente não pode fazê-lo.