sql-server-2005 – SQL Server 2005中与复合主键的外键关系

前端之家收集整理的这篇文章主要介绍了sql-server-2005 – SQL Server 2005中与复合主键的外键关系前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有两张桌子
Table1(
  FileID,BundledFileID,Domain)

Table2(
  FileID,FileType,FileName)

在表2中,FileID和FileType是复合主键.我想创建从Table1.FileID到Table2的外键关系.

是否有可能做到这一点?

解决方法

由于Table2具有复合主键(FileID,FileType),因此对它的任何引用也必须包括两列.
ALTER TABLE dbo.Table1
  ADD CONSTRAINT FK_Table1_Table2
  FOREIGN KEY(FileID,FileType) REFERENCES Table2(FileID,FileType)

除非你在Table2.FileID字段上有一个唯一的约束/索引(但如果是这样的话:为什么这不是PK ??),你不能只在目标表上创建一部分PK的FK关系 – 只是可以’做到了.

猜你在找的MsSQL相关文章