试图在MySQL中创建一个联合表但外键不起作用

时间:2017-10-19 16:25:12

标签: mysql foreign-keys

这就是我的尝试:

create table books(bcode int(5) primary key, bname varchar(45));

create table customers(cid int(4), cname varchar(20), cadd varchar(40), bcode, 
varchar(45), foreign key(bcode) references books(bcode));

执行第二个语句后,出现以下错误:

ERROR 1215 (HY000): Cannot add foreign key constraint

我无法提出解决方案。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:3)

在第一本表中,您使用bcode作为整数 但在第二个表中,您使用bcode作为varchar,

所以,正确的是

create table customers(cid int(4), cname varchar(20), cadd varchar(40), bcode
int(5), foreign key(bcode) references books(bcode));