为什么这个表创建不能在mysql中工作

时间:2017-12-30 22:49:12

标签: mysql

我不知道为什么这个简单的表在运行时不会自行创建 它只是说结束括号有问题

CREATE TABLE LeaderBoard (
ID INT,
Score int,
PRIMARY KEY (ID),
FOREIGN KEY (ID)
);

1 个答案:

答案 0 :(得分:0)

外键必须引用其他表。

外键是通过其主键引用另一个表中的行的值,用于在两个表之间建立关系。换句话说,声明为外键的列必须包含从其他表的主键列中选取的值(如果它具有多个,则应该为引用表中的每个主键列提供一个外键列)

在没有引用另一个表的情况下声明外键是没有意义的。

我建议你阅读:https://en.wikipedia.org/wiki/Foreign_key

(注意:有些引擎可能会放松我上面列出的一些限制;我不记得MySQL在这个问题上的确切限制。尽管如此,你理解这个概念是非常重要的。设计数据库模式之前的外键和关系。)