1

トリガーを作成しようとして問題が発生しました。table_1 と table_2 があり、table_1 の更新イベントは、where 句を使用して識別された table_2 の行を更新する必要があります。

CREATE DEFINER=`root`@`localhost` TRIGGER `update_table_2` AFTER UPDATE ON `table_1` FOR EACH ROW BEGIN

   IF table_1.key=0 THEN
      UPDATE table_2 SET table_2.value='10' WHERE table_2.key='2';   
   END IF;

END

私の問題は何ですか?! ありがとう

4

1 に答える 1

1

トリガーでは、キーワードoldnewキーワードを使用して、更新されたレコードを参照する必要があります (それぞれ古い値と新しい値)。

あなたの場合、次のことを行う必要があります。

   IF new.key=0 THEN
      UPDATE table_2 SET table_2.value='10' WHERE table_2.key='2';   
   END IF;
于 2013-08-05T15:07:41.403 に答える