can't add foreign key in mysql?

 1 create table department
 2     (dept_name        varchar(20), 
 3      building        varchar(15), 
 4      budget                numeric(12,2) check (budget > 0),
 5      primary key (dept_name)
 6     );
 7 
 8 create table course
 9     (course_id        varchar(8), 
10      title            varchar(50), 
11      dept_name        varchar(20),
12      credits        numeric(2,0) check (credits > 0),
13      primary key (course_id),
14      foreign key (dept_name) references department
15         on delete set null
16     );

显示出错can't add foreign key 。
版本:MySQL5.6
但在MySQL5.1上能运行
在网上各种找原因,都搞不定。最后是这样搞定的,太坑了:
 1 create table department
 2     (dept_name        varchar(20), 
 3      building        varchar(15), 
 4      budget                numeric(12,2) check (budget > 0),
 5      primary key (dept_name)
 6  ); 7 8 create table course 9 (course_id varchar(8), 10 title varchar(50), 11 dept_name varchar(20), 12 credits numeric(2,0) check (credits > 0), 13 primary key (course_id), 14 foreign key (dept_name) references department(dept_name) 15 on delete set null 16 );

转载于:https://www.cnblogs.com/awater/p/3835811.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值