質問

Magentoデータベースを再インデックス化しようとしている間、次のエラーが発生します。

製品フラットデータインデックスプロセス不明エラー:メッセージ付き「PDOEXCEPTION」「SQLSTATE [23000]:整合性制約>違反:1452チャイルド行を追加または更新できません:外部キー制約失敗>(d014505f。、制約>FK_CAT_PRD_FLAT_1_ENTT_ID_CAT_PRD_ENTT_ENTT_ID 外部キー (entity_id)>参照 catalog_product_entity ( `e) 'in> /www/htdocs/w00f5624/lib/zend/db/statement/pdo.php:228

これを修正するにはどうすればよいですか?

役に立ちましたか?

解決

Sanderが正しく述べたように、製品のフラットテーブルにまだ存在する削除された製品がこのエラーを引き起こします。とにかく、テーブル全体を切り捨てる必要はありません。これらの製品は、このSQL-Queryで見つけることができます。

SELECT pf1.entity_id
FROM catalog_product_flat_1 pf1
LEFT JOIN catalog_product_entity p ON pf1.entity_id = p.entity_id
WHERE ISNULL( p.entity_id ) 

その後、これらのアイテムを削除する必要があります。これは、このSQL-Queryを使用して実行できます。

DELETE pf1.*
FROM catalog_product_flat_1 pf1
LEFT JOIN catalog_product_entity p ON pf1.entity_id = p.entity_id
WHERE ISNULL( p.entity_id ) 

ここから取られた(ドイツ語): http://www.avs-webentwicklung.de/nc/blog/artikel/magento-fehler-beim-index-aufbau-sofortmassnahmen.html

もっとアドバイスが必要かどうか尋ねてください。

他のヒント

私は以前にこの問題を抱えていました。 Product_flat_Dataテーブルを切り捨て、その後再インネックスすることで解決しました。これは、テーブルにまだ存在していない既存の製品が原因です。

ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top