SQLSTATE [23000]:完整性约束违规:1452无法添加或更新子行:外键约束失败

时间:2012-04-19 17:53:53

标签: magento

我已使用此link处的SQL脚本删除所有测试产品数据和类别。然后我读了“产品”类别,然后导入我的CSV文件,Magento在检查数据时说没问题,但是当我点击导入时,我收到以下错误:

  

SQLSTATE [23000]:完整性约束违规:1452无法添加或   更新子行:外键约束失败   (gare6221_qshed/catalog_product_website,CONSTRAINT   FK_CAT_PRD_WS_PRD_ID_CAT_PRD_ENTT_ENTT_ID外键(product_id)   参考catalog_product_entityentity_id)ON DELETE CASCADE)

任何想法的家伙?我真的很挣这个。

由于

3 个答案:

答案 0 :(得分:4)

这已得到修复,问题是由于SKU长度超​​过64个字符。

答案 1 :(得分:0)

我要说的第一件事是避免直接使用数据库。它可以很快变得混乱(正如你正在学习的那样)。

话虽如此,看起来你可能会在某处留下一些剩余的数据。也许catalog_product_website?

答案 2 :(得分:0)

虽然SKU并不是这个问题的原因(但我们的SKUS的格式为' FOO - ####'),所以也遇到了这个问题。它们都不是64个字符。

当我选择csv文件并选择检查数据时,它会通过检查罚款:

Checked rows: 1718, checked entities: 47, invalid rows: 0, total errors: 0
File is valid! To start import process press "Import" button

选择导入后,我收到此错误:

SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`magentoss`.`catalog_product_option_type_value`, CONSTRAINT `FK_CAT_PRD_OPT_TYPE_VAL_OPT_ID_CAT_PRD_OPT_OPT_ID` FOREIGN KEY (`option_id`) REFERENCES `catalog_product_option` (`option_id`) ON D), query was: INSERT INTO `catalog_product_option_type_value` (`option_type_id`,`sort_order`,`sku`,`option_id`) VALUES (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?), (?, ?, ?, ?)

在检查产品列表后,似乎文件已上传,因为我的所有数据都已更新,因此不能完全确定正在进行的操作。