2017-01-08 13 views
0

私のテーブルをcsvから更新します。今すぐcsvからのデータがテーブル "temp_update_stany"にインポートされますが、私は更新テーブルを傾けません。エラーなしでクエリを実行しますが、何も更新されません。 CSVから複数のテーブルを1つのクエリで更新します。

表は次のとおり

produkt|quantity|price|active|czas 

クエリ:クエリから

UPDATE lp2_product tabela 
     INNER JOIN lp2_stock_available stany ON (tabela.id_product = stany.id_product) 
     INNER JOIN lp2_product_lang lang ON (tabela.id_product = lang.id_product) 
     INNER JOIN temp_update_stany csv ON (tabela.id_product = csv.produkt) 
    SET 
     tabela.active = csv.active, 
     tabela.price = csv.price, 
     lang.available_now = csv.czas, 
     stany.quantity = csv.quantity 
    WHERE 
     csv.produkt = tabela.id_product 
     OR csv.produkt = lang.id_product 
     OR csv.produkt = stany.id_product 

と出力:

Modified records: 0 (Perform queries took 0.0322 seconds (s)). 

が、例えば "lp2_product" /行 'アクティブ' の値を有しますすべての製品で0、temp_update_stanyの値がすべて1です。

はい、これは数量と価格を更新するためのプレスタショットと簡単なスクリプトです。

+2

この完全かつ検証可能な例を作成してください。すぐにエラーが表示されます。 –

+0

BTW:WHERE句を完全に削除することができます。これは、最初の条件が常に真である(JOIN ON句に冗長)ため、他の2つは関係ありません。 –

+0

どういう意味ですか?私はエラーはありませんが、これは何も更新しません。 – Maku123PL

答えて

0

上記のコメントによれば、UPDATEは、正味の変更がない場合に影響を受けるゼロ行を報告します。したがって、テーブルが既に希望の値で更新されている場合は、UPDATEはノーオペレーションであり、ローは影響を受けません。

関連する問題