2017-08-28 23 views
1

参加します。更新複数のテーブルには、私は2つのテーブルを持っている

これらの内部結合メソッドはありますか?

+0

いいえ、更新は一度に一つのテーブルの列を更新することができますが、あなたが2回の更新を送信することができます1回のトランザクションでデータベースを1回のバッチで実行できます。 –

+0

@CharlesBretanaこれはMySQLでは当てはまりません。 MySQLは、単一のステートメントで複数のテーブルを更新することをサポートしています。 – Siyual

+0

@CharlesBretanaだから基本的に私はストアドプロシージャを使用する必要がありますか? @Siyualからのコメントに基づいて –

答えて

0
UPDATE pur_order a, pur_entry b SET a.is_deleted = 1, b.is_deleted = 1 
WHERE b.id_pur_order = b.id AND a.id = 1; 
-1

このトピックは既に以前に要求されています。
はこちらをご覧:あなたのケースでMySQL, update multiple tables with one query

、これは動作するはずです:

UPDATE Pur_order, Pur_entry 
    SET Pur_order.is_deleted = 1 
     ,Pur_entry.is_deleted = 1 
WHERE Pur_entry.id_pur_order = Pur_order.id 
    AND Pur_order.id = @YourDesiredUpdateId 
; 
+0

しかし、これはすべてのフィールドを更新する、私はpur_entry-> idの条件を持っています –

+0

@mauliksompuraもちろん、更新する行を指定する必要があります。私はちょうど私の答えを更新した。変数YourDesiredUpdateIdには、更新するIDを保持する必要があります。または更新する行をどのように指定しますか? –

+0

UPDATE Pur_order、Pur_entry SETはPur_order.is_deleted = 1 、質問が重複などのフラグがある場合Pur_entry.id_pur_order = Pur_order.id AND Pur_entry.id = @id –

関連する問題