开发者社区> 问答> 正文

数据库foreign key error 1215 ,什么原因?求指导

下面这段代码运行在MySql上总是在create table section的时候报error 1215,不能添加外键......
求问为什么啊......

create table department
(dept_name varchar(20) not null primary key, 
building varchar(20),
budget numeric(12,2)); 


create table instructor
( ID varchar(5),
  name varchar(20),
  dept_name varchar(20),
  salary numeric(12,1)
);


create table course
( course_id varchar(8),
  title     varchar(50),
  dept_name varchar(20) references department,
  credits   numeric(2,0),
  primary key (course_id)
  #foreign key constraints can be here too :  
  #foreign key (dept_name) references department
);


/*alter table course 
  change column course_id 
    course_id varchar(8) unique;
*/

create table section
( course_id     varchar(8),
  sec_id        varchar(8),
  semster       varchar(6),
  year          numeric(4,0),
  building      varchar(15),
  room_number   varchar(7),
  time_sloth_id varchar(4),
  primary key(course_id,semster,year),
  foreign key (course_id) references course
);

create table teach
( ID          varchar(5),
  course_id   varchar(8),
  semster     varchar(6),
  year        numeric(4,0),
  primary key (ID,course_id,semster, year),
  foreign key (ID) references instructor,
  foreign key (course_id, semster, year) references section
);

展开
收起
落地花开啦 2016-01-31 16:00:00 2908 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    试试
    foreign key (course_id) references course(course_id

    2019-07-17 18:36:46
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载
云时代的数据库技术趋势 立即下载
超大型金融机构国产数据库全面迁移成功实践 立即下载