微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sqlserver中 在被引用表 'A' 中没有与外键 'c2' 中的引用列列表匹配的主键或候选键

代码如下:

create table ddd

(
    name varchar(10) not null,
    age int not null,
    constraint cc primary key(name,age)
)

create table ccc
(
    gender  varchar(20) not null,
    id varchar(20) not null,
    cname varchar(10) not null,
    constraint c2 foreign key (cname) references ddd(name)

)

这样的编写会导致如上提示

消息 1776,级别 16,状态 0,第 1 行
在被引用表 'ddd' 中没有与外键 'c2' 中的引用列列表匹配的主键或候选键。
消息 1750,级别 16,状态 0,第 1 行
无法创建约束。请参阅前面的错误消息。


修改方案:


create table ddd

(
    name varchar(10) primary key not null,
    --constraint cc primary key(name,age)
)

修改之后错误消失,原因未知,希望有类似经历的朋友给予解答,谢谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐