当我执行以下SQL查询时:
CREATE TABLE course
(
course_id varchar( 7 ) ,
title varchar( 50 ) ,
dept_name varchar( 20 ) ,
credits numeric( 2, 0 ) ,
PRIMARY KEY ( course_id ) ,
FOREIGN KEY ( dept_name ) REFERENCES department
);
我收到以下错误:
MySQL said: Documentation
1215 - Cannot add foreign key constraint
有助于解决此问题的任何见解?
答案 0 :(得分:1)
您没有在父表中添加字段来引用。
应该是:
FOREIGN KEY ( dept_name ) REFERENCES department( dept_name )
答案 1 :(得分:0)
引用应该像REFERENCES TABLE( COLUMN_NAME )
FOREIGN KEY ( dept_name ) REFERENCES department( dept_name )
然后看起来像
CREATE TABLE course
(
course_id varchar( 7 ) ,
title varchar( 50 ) ,
dept_name varchar( 20 ) ,
credits numeric( 2, 0 ) ,
PRIMARY KEY ( course_id ) ,
FOREIGN KEY ( dept_name ) REFERENCES department( dept_name )
);
答案 2 :(得分:0)
您需要指定引用表中的哪个列匹配。您的查询应如下所示:
CREATE TABLE course
(
course_id varchar( 7 ) ,
title varchar( 50 ) ,
dept_name varchar( 20 ) ,
credits numeric( 2, 0 ) ,
PRIMARY KEY ( course_id ) ,
FOREIGN KEY ( dept_name ) REFERENCES department ( dept_name )
);