質問

い一部の画像は私の地元のサイトおよびその後に行く際、商品詳細ページんざエラーページというエラーが発生加工および画像ファイルが見つかりませんでした。この製品の平面データによると必要で再物価連動が避けてくださいインデックスで、という問題がありましたとreindexingます。この画像に関する課題と要らなくなったreindexing前ます。インストールを行ってください製品また掲載の画像、インストールを行ってくださいキャッシュをクリアロックファイルとしていたが別のポストに似たこのことを見つけた。誰でもできるのでらゆる更なる行動ができるデバッグです。

<---詳細は---> っreindexファイルのコンソールで以下のエラー

   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 (`startlondon_live`.`#sql-448_15e`, CONSTRAINT `FK_MAG_MAG_CAT_PRD_FLAT_1_ENTT_ID_MAG_CAT_PRD_ENTT_ENTT_ID` FOREIGN KEY (`entity_id`) REFERENCES `mag_catalog_product_entity` (`entity_id`) ON DE)' in /home/start-london/public_html/lib/Zend/Db/Statement/Pdo.php:228

のことだけを考えついたことをoffにして外部キー制約、データベースがこん助

役に立ちましたか?

解決

望は受け付けていません。:その中に問題...

このエラーメッセージが語る:

startlondon_live`.`#sql-448_15e`, CONSTRAINT `FK_MAG_MAG_CAT_PRD_FLAT_1_ENTT_ID_MAG_CAT_PRD_ENTT_ENTT_ID` FOREIGN KEY (`entity_id`) REFERENCES `mag_catalog_product_entity` (`entity_id`)...

どこが聞かせていただきましては、カラム startlondon_live は参照カタログ商品idカラム(mag_catalog_product_entity の法分野が そのエントリやフィールドが存在しない.の名前の外部キーが整形の対象にならなくなり、インストーラざいという名前をつけるかです。

アブドウラエ氏(中央制約だから別のテーブルが破たのindexerので対象カラムはもはや存在しないまたは削除され、orphaningの子供です。

ユーザー評価この数うな思想を貫いています。

  • 作成時に新しい分野のいずれかのカスタムリソースモデルの拡張のカタログざい 不必要な修正平のテーブル.
  • でも不要であることを外部キー関係をentity_idの平ます。FK関係の実施スキーマとデータの誤りを防止または孤児がコンテンツの中心に、ざ,EAVんでいないことを徹底するこのスキーマ.平坦なテーブル内蔵してon-the-flyで、属性を露出として自分をフロントエンドの属性automagicallyの作成に必要なカラムの平坦ます。
  • とされる場合はカスタムリソースのモデルは必要ないFKとの関係のフラットテーブル--その代わりに作成しFKとの関係 catalog_product_entity テーブルすべての事業体の記録ざきです。を行います。する削除する。

最終的にする必要がありまfixこのエラーになります。 S外部キーチェックとピ災害.

代わりに、 おススキーマの編集 からざDBです。無効化/有効平カタログの 最悪のシナリオcatalog_product_flat* テーブルを再建します。

他のヒント

これを修正します

この問題を修正するには、破損したエントリが何であるかを見つける必要があります。これは簡単。この場合、空のレジスタを取得するにはクエリを作成する必要があります。

SELECT a.entity_id FROM catalog_product_flat_2 AS a LEFT JOIN catalog_product_entity AS b ON a.entity_id = b.entity_id WHERE ISNULL(b.entity_id);

これにより、破損したエンティティが表示されます。それらを削除するだけで、それだけです。

+-----------+
| entity_id |
+-----------+
|     35427 |
|     35428 |
+-----------+
2 rows in set (0.04 sec)

例として:

DELETE FROM catalog_product_flat_2 where entity_id = '35427';
ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top