0

在 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' (errno: 150) (Dettagli...)

4

1 回答 1

2

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

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

SQLFiddle 演示

于 2013-11-08T16:31:02.877 回答