当我执行以下查询时,出现上述错误。
CREATE TABLE doctor
(
id varchar(6) NOT NULL,
Specialization varchar(15) NOT NULL,
FOREIGN KEY(id) REFERENCES employee(id)
on delete cascade on update cascade
);
问题出在哪里?
最佳答案
在添加任何指向它的 FK 之前,您需要在 employee(id)
上有一个索引。您还需要 doctor(id)
上的一个。在这两种情况下,主键似乎都是一个不错的选择。
不要忘记,在CREATE TABLE
脚本中,PRIMARY KEY
应该出现在FOREIGN KEY
指令之前。
请参阅这篇文章以获取快速操作方法:How to add a primary key to a MySQL table?
关于mysql - #1005 - 无法创建表 'hms.doctor'(错误号 : 150),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19594716/