【问题标题】:Can't create table (errno: 150) while trying to create a new table [closed]尝试创建新表时无法创建表(错误号:150)[关闭]
【发布时间】:2013-11-08 16:26:41
【问题描述】:

在 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...)

【问题讨论】:

  • 开启“读心v0.1alpha”,阅读Studenti是什么。失败。

标签: mysql mariadb


【解决方案1】:

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

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

SQLFiddle demo

【讨论】:

    猜你喜欢
    • 2016-02-11
    • 2016-07-02
    • 1970-01-01
    相关资源
    最近更新 更多