2017-07-08 124 views
0
create table department 
(
dept_name varchar(20), 
building varchar(20), 
budget numeric(12, 2), 
primary key(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 
); 

的它顯示:

ERROR 1005(HY000):無法創建表'satyarth.course'(errno:150)

+0

可能的複製( https://stackoverflow.com/questions/9018584/error-code-1005-cant-create-table-errno-150)所以問題。 –

回答

1

你錯過的外鍵要求的部分,因爲你不能簡單地指到另一個表:

foreign key (dept_name) references department(dept_name) 
1

添加引用表字段名PFB的[這]

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