「Special_price」と「price」を mySQL と PHP スクリプトで一括更新しようとしていますが、「price」を含むテーブルと行はわかっていますが、「special_price」を含むテーブルと行はわかりません。
私はデータベース自体を調べましたが、まだ運がありません。何か案は?テーブル名とフィールド名が必要です。
Magento Question Answers Guild のメンバーであるため、プレーンな古い SQL を使用してデータベースを更新するのではなく、API エラーの修正に取り組むことを提案する必要があります。他の場所で述べたように、データベースを直接更新すると、Magento がシステムによって認識されない状態になる可能性があり、奇妙な、腹立たしいエラーが発生する可能性があります。
ただし、特別価格の値は、他の製品属性値とともに
catalog_product_entity_decimal
テーブル。このテーブルには、テーブルattribute_id
との外部キー関係を持つ列がありeav_attribute
ます。eav_attribute
code を持つ属性の表を参照してくださいspecial_price
。で正しい行を見つけるには、それとattribute_id
製品entity_id
で十分なはずcatalog_product_entity_decimal
です。
商品にセットがない場合、行は存在しないことに注意してくださいspecial_price
。また、商品special_price
に異なる範囲レベルのセットがある場合、複数の行が存在する可能性があることに注意してください。
特別価格は10進型の属性です。まず、次のSQLクエリを適用して、属性IDを取得する必要があります。
SELECT attribute_id FROM eav_attribute WHERE attribute_code='special_price';
次に、テーブルにレコードを挿入することで、任意の製品に特別価格を追加できcatalog_product_entity_decimal
ます。