修复了Innodb完整性约束违规:1452

时间:2012-09-27 18:45:05

标签: php mysql magento foreign-keys constraints

我可以用什么Innodb查询来纠正以下问题?

  

SQLSTATE [23000]:完整性约束违规:1452无法添加或更新子行:外键约束失败(mrvallar_magdbcatalog_product_entity_varchar,CONSTRAINT CATALOG_PRODUCT_ENTITY_VARCHAR_IBFK_3 FOREIGN KEY({{ 1}})REFERENCES entity_idcatalog_product_entity_orig)ON DELETE)

2 个答案:

答案 0 :(得分:2)

您尝试使用catalog_product_entity_varchar

中不存在的entity_id值在catalog_product_entity_orig中插入/更新记录

您需要在“ orig ”表中插入该实体,然后才能在“ varchar ”表中引用它

答案 1 :(得分:0)

您尝试插入具有引用表中不存在的外键的记录。这是您遇到问题的原因。

您需要检查引用ID不存在的原因并解决问题。可能的解决方案:

  1. 您可以修复数据并确保将来不会出现此类不一致的情况。

  2. 您可以检查是否存在所有引用的值,如果不存在,请在插入有问题之前插入它们

  3. 您可以通过检查where子句中是否存在引用记录来插入 - 选择您的表。