0

product_dataのインデックス作成に問題があり、次のエラーが発生します:(ps最近ホスティングを変更し、adminhtmlタイムアウトとしてShellを介してインデックスを再作成しました)

Product Flat Data index process unknown error:exception 'PDOException' with message
'SQLSTATE[23000]: Integrity constraint violation: 
1452 Cannot add or update a child row: a foreign key constraint fails
(`britwear_magento`.<result 2 when explaining filename '#sql-55fda_1226f51'>,
CONSTRAINT `FK_CAT_PRD_FLAT_2_ENTT_ID_CAT_PRD_ENTT_ENTT_ID` 
FOREIGN KEY (`entity_id`) REFERENCES `catalog_product_e)' 
in /home2/britwear/public_html/magento/lib/Zend/Db/Statement/Pdo.php:228
Stack trace:

#0 /home2/britwear/public_html/magento/lib/Zend/Db/Statement/Pdo.php(228): PDOStatement->execute(Array)
#1 /home2/britwear/public_html/magento/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)
#2 /home2/britwear/public_html/magento/lib/Zend/Db/Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array)
#3 /home2/britwear/public_html/magento/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)
#4 /home2/britwear/public_html/magento/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('ALTER TABLE `ca...', Array)
#5 /home2/britwear/public_html/magento/lib/Varien/Db/Adapter/Pdo/Mysql.php(389): Zend_Db_Adapter_Pdo_Abstract->query('ALTER TABLE `ca...', Array)
#6 /home2/britwear/public_html/magento/lib/Varien/Db/Adapter/Pdo/Mysql.php(327): Varien_Db_Adapter_Pdo_Mysql->query('ALTER TABLE `ca...')
#7 /home2/britwear/public_html/magento/lib/Varien/Db/Adapter/Pdo/Mysql.php(2548): Varien_Db_Adapter_Pdo_Mysql->raw_query('ALTER TABLE `ca...')
#8 /home2/britwear/public_html/magento/app/code/core/Mage/Catalog/Model/Resource/Product/Flat/Indexer.php(806): Varien_Db_Adapter_Pdo_Mysql->addForeignKey('FK_CAT_PRD_FLAT...', 'catalog_product...', 'entity_id', 'catalog_product...', 'entity_id', 'CASCADE', 'CASCADE')
#9 /home2/britwear/public_html/magento/app/code/core/Mage/Catalog/Model/Resource/Product/Flat/Indexer.php(125):  Mage_Catalog_Model_Resource_Product_Flat_Indexer->prepareFlatTable(2)
#10 /home2/britwear/public_html/magento/app/code/core/Mage/Catalog/Model/Resource/Product/Flat/Indexer.php(115): Mage_Catalog_Model_Resource_Product_Flat_Indexer->rebuild('2')
#11 /home2/britwear/public_html/magento/app/code/core/Mage/Catalog/Model/Product/Flat/Indexer.php(73): Mage_Catalog_Model_Resource_Product_Flat_Indexer->rebuild(NULL)
#12 /home2/britwear/public_html/magento/app/code/core/Mage/Catalog/Model/Product/Indexer/Flat.php(303): Mage_Catalog_Model_Product_Flat_Indexer->rebuild()
#13 /home2/britwear/public_html/magento/app/code/core/Mage/Index/Model/Process.php(166): Mage_Catalog_Model_Product_Indexer_Flat->reindexAll()
#14 /home2/britwear/public_html/magento/app/code/core/Mage/Index/Model/Process.php(194): Mage_Index_Model_Process->reindexAll()
#15 /home2/britwear/public_html/magento/shell/indexer.php(158): Mage_Index_Model_Process->reindexEverything()
#16 /home2/britwear/public_html/magento/shell/indexer.php(198): Mage_Shell_Compiler->run()
#17 {main}

phpMyAdminで外部キー制約を削除する必要があると思いますが、どこにあるのかわかりませんか?

4

2 に答える 2

1

両方のテーブルを選択して、考えられる問題を修正してください。一部のテーブルからIDを削除するか、特定のIDを追加して、今すぐインデックスを再作成し、次に削除できるようにすることができます。このエラーを取得するために何をしたか説明できますか?

于 2011-11-23T07:12:33.377 に答える
1

drop table catalog_product_flat_ (ドロップ フラット カタログ)

php shell/indexer.php reindexall (magento インデックスを持っている

于 2012-04-24T06:54:01.760 に答える