我需要对SQL Server 2008数据库进行一些更改。
这需要创建一个新表,并在新表中插入一个外键,该外键引用一个已经存在的表的主键。因此,我想在新的tblTwo之间建立关系,该关系引用了tblOne的主键。
但是,当我尝试通过SQL Server Management Studio执行此操作时,出现以下错误:
表’tblOne’中的列与现有的主键或UNIQUE约束不匹配
我不太确定这是什么意思,我想知道是否有解决办法?
这意味着尚未正确声明tblOne中的主键-您需要转到tblOne并将PRIMARY KEY约束添加回去。
如果您确定tblOne确实具有PRIMARY KEY约束,则您的数据库中可能有多个tblOne表,它们属于不同的模式,并且FK约束中的references子句选择了错误的表。
如果有一个组合键(您的注释将表明该组合键),那么您还必须在外键引用中同时包含这两列。请注意,一个表不能有多个主键- 但是,如果它有一个复合键,您将在属于主键的每一列旁边看到一个键符号。