我正在将WAMP堆栈与phpMyAdmin一起使用,并且数据库引擎是MyISAM。我创建了两个表:Parent,Child。在父表中,将id列设置为PK,在子表中,将parent_id列设置为FK。根据我的理解,这种关系不允许我在child.parent_id的值与parent.id中的任何值都不匹配的子表中添加记录。

然后,我将一行数据插入到Parent表中(从而创建1条记录的id列= 1)。但是后来我尝试在parent_id = 2的Child表中插入一行,并允许我这样做。

为什么?

表结构快照:
http://i.imgur.com/qMbZuI5.png

最佳答案

Quora回答了我的怀疑:MyISAM不强制执行此约束。更改为InnoDB。

关于mysql - 为什么我的外键关系不应用约束规则?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41169906/

10-12 22:23
查看更多