尝试创建新表时无法创建表(错误号:150)

时间:2013-11-08 16:26:42

标签: mysql mariadb

在PHPMyAdmin上,我进入了我正在使用的数据库,然后选择了SQL选项卡,并输入了:

CREATE TABLE PianoDS
(sid CHAR(20),
cid CHAR(20),
grade CHAR(20),
PRIMARY KEY (sid,cid),
FOREIGN KEY (sid) REFERENCES Studenti);

但我获得了

  

1005 - 无法创建表'basi_di_dati.PianoDS'(错误号码:150)(Dettagli ...)

1 个答案:

答案 0 :(得分:2)

您需要定义外键与哪个列相关,而不仅仅是表

CREATE TABLE PianoDS
(
  sid CHAR(20),
  cid CHAR(20),
  grade CHAR(20),
  PRIMARY KEY (sid,cid),
  FOREIGN KEY (sid) REFERENCES Studenti(id)
);

SQLFiddle demo