【发布时间】:2014-10-26 21:05:18
【问题描述】:
对不起,我对此很陌生,
我有 3 个表,一个是 table1、table2 和 table12。 table1 有一个 PK table1_id,table2 有一个 table2_id 作为 PK。 table12有3个属性,FK table1_id, FK table2_id, and table12_name。
我没有 table12_id 有错吗?
感谢您的愚蠢帖子......
【问题讨论】:
-
简短的回答是肯定的。即使该键本身不能用于链接您的数据模型,每个表应该都有一个 PK。在 MySQL 的情况下(实际上是 InnoDB),一个没有定义 PK 的表会在内部创建一个“隐藏”的表——这是有原因的,它们超出了这个问题的范围。虽然省略 PK 并没有错,但您确实应该创建一个。
标签: mysql