1

我正在尝试INSERT进入表格,但出现错误Cannot add or update a child row: a foreign key contraint fails

正如错误所说,我有一个正在尝试更新的外键。

现在我正在使用一个简单INSERT的方法:

INSERT INTO tblTable1 (firstColumn, foreignKey) VALUES ('blabla', 1)

foreignKey如果id 是 ,我该如何插入tblTable2

4

3 回答 3

3

您需要先将记录添加到父表,然后再添加子表。

来自关于外键约束的 MySQL 文档:

如果父表中没有匹配的候选键值,则 InnoDB 拒绝任何尝试在子表中创建外键值的 INSERT 或 UPDATE 操作。

这是有关如何使用外键约束和示例的 MySQL 文档。

于 2012-05-08T13:13:37.307 回答
2

首先在表 2 中插入应用外键约束的条目,然后在表 1 中添加运行插入查询。它会起作用的

于 2012-05-08T13:04:23.410 回答
2

你必须保持你的约束。您不能在相关表中添加没有合适值的记录!

于 2012-05-08T13:02:22.147 回答