1

我的备份文件中有一个 sql 查询,它有大量的插入语句。

插入tns_spo_hotel( id_spo, id_hotel) 值 (523,149),(523,195), ...

我在两列上都有一个外键。

当我运行此查询时,它返回

#1452 - Cannot add or update a child row: a foreign key constraint fails (`tsakhkad_tour_new`.`tns_spo_hotel`, CONSTRAINT `tns_spo_hotel_22` FOREIGN KEY (`id_hotel`) REFERENCES `tns_hotel` (`id`) ON DELETE CASCADE ON UPDATE CASCADE)

因为有一些行,缺少值。

是否可以忽略该错误消息并继续执行 sql ?

4

1 回答 1

4

是否可以忽略该错误消息并继续执行 sql ?

简短的回答是否

您不能忽略错误并继续使用这些无效值。因为这就是外键约束的作用。这就是为什么他们称之为约束。它们确保数据的一致性。如果您可以忽略这些违反外键引用的值,您的数据就会变得不一致。

唯一可能的方法是删除外键约束。但是您不应该这样做,而是修复您的数据输入。

于 2012-11-03T14:35:17.840 回答