菜鸟问题:mysql 建表 外键问题

主表的代码是这样写的createtablescore(idvarchar(20)notnull,xuenianvarchar(20)notnull,primarykey(... 主表的代码是这样写的
create table score(id varchar(20) not null,
xuenian varchar(20)not null,primary key(id,xuenian),
deyu varchar(20) null,
xuexi varchar(20) null,
zhiyu varchar(20) null,
tiyu varchar(20) null,
zhonghe varchar(20)null)

但是 再建个有外键参照score表的时候
create table kecheng(kcid varchar(20) not null primary key,
xuenian varchar(20) not null constraint fk foreign key(xuenian) references score(xuenian),
kecheng varchar(20) null
)
就会提示

服务器: 消息 1776,级别 16,状态 1,行 1
在被引用表 'score' 中没有与外键 'fk' 的引用列的列表匹配的主键或候选键。
服务器: 消息 1750,级别 16,状态 1,行 1
未能创建约束。请参阅前面的错误信息。

要怎么办才好呢?
展开
 我来答
阳光上的桥
2009-04-01 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65810
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
你要在score表里面定义xuenian为KEY,例如:

create table score(id varchar(20) not null,
xuenian varchar(20)not null,primary key(id,xuenian),
deyu varchar(20) null,
xuexi varchar(20) null,
zhiyu varchar(20) null,
tiyu varchar(20) null,
zhonghe varchar(20)null,
KEY (xuenian))
wqygghhui
2009-04-18
知道答主
回答量:3
采纳率:0%
帮助的人:0
展开全部
看说明!应该有
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tz000074
2009-04-21
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
你要在score表里面定义xcreate table score(id varchar(20) not null,
xuenian varchar(20)not null,primary key(id,xuenian),
deyu varchar(20) null,
xuexi varchar(20) null,
zhiyu varchar(20) null,
tiyu varchar(20) null,
zhonghe varchar(20)null,
KEY (xuenian)) uenian为KEY,例如
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式