can't add foreign key in mysql?

3957 ワード

 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 );