2011-08-25 9 views
5

Magentoのカタログに12k以上の製品をインポートしました。一括更新のシンプルプロダクト "status"(MySQLクエリ経由)

問題は、「ステータス」フィールドが未定義であるため、フロントエンドストアで使用する場合は手動で「有効」にしておく必要があります。これを手動で行うには数時間かかるでしょう。

この設定がデータベースで定義されている場所を知っていますか?これを自動的に行うクエリを知っていますか(すべての製品を「有効」に設定したい)あなたはこの少し修正することができ、それはデフォルトで有効になっているしたい場合は

UPDATE Catalog SET Status='Enabled' 

を有効として

+0

無効あなたはそのための小さなスクリプトを書くことができます。 – Kailas

答えて

-7

すべての行を設定します。

ALTER TABLE `Catalog` CHANGE `Status` `Status` ENUM('','Enabled','Disabled') NOT NULL DEFAULT 'Enabled' 
+0

Magentoバージョンはこれに該当しますか? – Alex

+4

これはマゼンタ版には当てはまりません。 –

16
# First find the ID of the product status attribute in the EAV table: 
SELECT * FROM eav_attribute where entity_type_id = 4 AND attribute_code = 'status' 

# Then use that status attribute ID ($id) while querying the product entity table: 
UPDATE catalog_product_entity_int SET value = 1 WHERE attribute_id = $id 
  • 1 -
  • 2を有効に -
+0

異なる値が異なるテーブルに格納されていることに注意してください。値が 'varchar'型の場合、catalog_product_entity_varcharに格納されます。これはeav_attributeテーブル構造体で確認できます。ありがとう、これは私を助けた。 – DreamWave