1
私は2つのテーブルで同じトリガーを持っています。両方向の更新後のmysqlトリガー
最初の1:
CREATE TRIGGER updateURL1 AFTER UPDATE ON table1
FOR EACH ROW
BEGIN
UPDATE table2 SET url=NEW.url WHERE uname=NEW.uname;
END;
秒1:
CREATE TRIGGER updateURL2 AFTER UPDATE ON table2
FOR EACH ROW
BEGIN
UPDATE table1 SET url=NEW.url WHERE uname=NEW.uname;
END;
私が予想したように、それは明らかであるものを、無限ループを行うことをしようとします。しかし、私にとっては良いことですが、更新されたばかりのテーブルを更新できないためにエラーが発生したため、作成できません。
問題は、私はユーザーのURLや他の多くの情報を編集するためにPHPフォームを使用しています。 mysqlがエラーを引き起こした場合、私はページにそれを書きます。
質問には、mysqlにそのプロシージャのエラーだけをトリガーしないように指示する方法がありますか?
どこに入れますか? – Marm
このページの半分の例があります。私はそれを答えに加えます。 –
ありがとう、私はプロテクターと一緒に2番目の方法が本当に好きです。より良いコードとなり、すべてのSQLEXCEPTIONを除外することはありません。 – Marm