Sql server Can';无法在Sql Server中创建外键

Sql server Can';无法在Sql Server中创建外键,sql-server,foreign-key-relationship,Sql Server,Foreign Key Relationship,我有两个表:SDCUST和新创建的sdrt(定义如下) SDCUST表定义 我希望CUSTID成为新表上的外键,但我得到一个错误: Msg 3701,第11级,第5状态,第1行 无法删除表“SDRTS”,因为它不存在或您没有权限。 Msg 1776,第16级,第0状态,第3行 引用的表“SDRTS”中没有与外键“FK\U SDRTS\U SDCUST”中的引用列列表匹配的主键或候选键。 Msg 1750,第16级,第0状态,第3行 无法创建约束或索引。请参阅前面的错误 如何创建此密钥?只需跟进

我有两个表:
SDCUST
和新创建的
sdrt
(定义如下)

SDCUST表定义

我希望
CUSTID
成为新表上的外键,但我得到一个错误:

Msg 3701,第11级,第5状态,第1行 无法删除表“SDRTS”,因为它不存在或您没有权限。
Msg 1776,第16级,第0状态,第3行 引用的表“SDRTS”中没有与外键“FK\U SDRTS\U SDCUST”中的引用列列表匹配的主键或候选键。
Msg 1750,第16级,第0状态,第3行 无法创建约束或索引。请参阅前面的错误


如何创建此密钥?

只需跟进以下评论即可解决此问题:


添加两列<代码>约束FK\U SDRTS\U SDCUST外键(BGTID,CUSTID)引用SDCUST(BGTID,CUSTID)

只是为了跟进注释,通过以下方式解决了此问题:


添加两列<代码>约束FK\U SDRTS\U SDCUST外键(BGTID,CUSTID)引用SDCUST(BGTID,CUSTID)

您正在引用同一个表<代码>引用SDRTS(CUSTID)您需要改为引用SDCUST表。约束FK\U SDRTS\U SDCUST外键(CUSTID)引用SDCUST(CUSTID),但错误消息:Msg 3701,级别11,状态5,第1行无法删除表“SDRTS”,因为它不存在或您没有权限。Msg 1776,第16级,状态0,第3行引用的表“SDCUST”中没有与外键“FK_SDRTS_SDCUST”中的引用列列表匹配的主键或候选键。Msg 1750,级别16,状态0,第3行无法创建约束或索引。请参阅前面的错误。您不能引用PK的一部分。您需要引用所有PK。添加两列<代码>约束FK\U SDRTS\U SDCUST外键(BGTID,CUSTID)引用SDCUST(BGTID,CUSTID)好的,非常感谢。您正在引用同一个表<代码>引用SDRTS(CUSTID)您需要改为引用SDCUST表。约束FK\U SDRTS\U SDCUST外键(CUSTID)引用SDCUST(CUSTID),但错误消息:Msg 3701,级别11,状态5,第1行无法删除表“SDRTS”,因为它不存在或您没有权限。Msg 1776,第16级,状态0,第3行引用的表“SDCUST”中没有与外键“FK_SDRTS_SDCUST”中的引用列列表匹配的主键或候选键。Msg 1750,级别16,状态0,第3行无法创建约束或索引。请参阅前面的错误。您不能引用PK的一部分。您需要引用所有PK。添加两列<代码>约束FK\U SDRTS\U SDCUST外键(BGTID,CUSTID)引用SDCUST(BGTID,CUSTID)好的,非常感谢。
DROP TABLE SDRTS
  GO
  CREATE TABLE SDRTS(
    BGTID int NOT NULL,
    RTSID uniqueidentifier NOT NULL,
    CONSTRAINT PK_SDRTS PRIMARY KEY CLUSTERED (BGTID,RTSID),
    CUSTID uniqueidentifier NOT NULL,
    CONSTRAINT FK_SDRTS_SDCUST FOREIGN KEY(CUSTID)
    REFERENCES SDRTS(CUSTID),
    BGRPID_1 uniqueidentifier NOT NULL,
    BGRPID_2 uniqueidentifier NOT NULL,
    INCRT FLOAT NULL,
    CURRID int NOT NULL,
    EDATE datetime NULL,
    EUSRID uniqueidentifier NULL,
    UDATE datetime NULL,
    UUSRID uniqueidentifier NULL,
    V001 float NULL,