7

いくつかの製品データと一緒にmagentoのSQLダンプをインポートしようとしていますが、この外部キー制約エラーが発生します:

`ERROR 1452 (23000) at line 231680: Cannot add or update a child row: a foreign key constraint fails:
`magento`.`#sql-b33_27`, CONSTRAINT `FK_CATALOG_COMPARE_ITEM_CUSTOMER_ID_CUSTOMER_ENTITY_ENTITY_ID` FOREIGN KEY (`customer_id`) REFERENCES `customer_entity` (`entity_id`) ON DELETE CASCADE ON )`

これはエラーの原因となっているSQLコードです:

--
-- Constraints for table `catalog_eav_attribute`
--
ALTER TABLE `catalog_eav_attribute`
  ADD CONSTRAINT `FK_CATALOG_EAV_ATTRIBUTE_ATTRIBUTE_ID_EAV_ATTRIBUTE_ATTRIBUTE_ID` FOREIGN KEY (`attribute_id`) REFERENCES `eav_attribute` (`attribute_id`) ON DELETE CASCADE ON UPDATE CASCADE;

私はSQLクエリにあまり慣れていません。誰かがこのクエリが何をするのか説明してくれて、これを解決するために私を導いてくれませんか?ありがとう。

4

2 に答える 2

17

にレコードを追加しようとしていますが、に一致catalog_eav_attributeする対応するレコードがありませんeav_attributeattribute_id

にバルクデータも挿入する場合はeav_attribute、最初にそれを行うことをお勧めします。次に、データを参照するために外部キーがcatalog_eav_attribute必要になる前に、データがテーブルにあります。

この記事では、次の使用方法について説明します。

SET FOREIGN_KEY_CHECKS = 0;
--Do your update here
SET FOREIGN_KEY_CHECKS = 1;

データを挿入する順序を変更できない場合。すべてがデータベースに挿入されたら、データが外部キーに従っていることを確認してから、FOREIGN_KEY_CHECKS

于 2011-11-29T06:10:59.057 に答える
0

私はデータベース修復ツールを使用し、その後SQLでこれを行いました。

ドロップ テーブルcatalog_product_flat_1、、 catalog_product_flat_2; catalog_product_flat_3

これで、インデックスが正常に作成されました。

于 2013-07-15T19:21:58.690 に答える