私が書いたMYSQLトリガーは次のとおりです。
DELIMITER //
CREATE TRIGGER updtrigger BEFORE UPDATE ON myTable
FOR EACH ROW
BEGIN
IF (OLD.column IS NOT NULL AND NEW.column IS NOT NULL AND NEW.column != OLD.column) THEN
SET NEW.col_updated_on = NOW();
END IF;
END //
DELIMITER ;
値column
(たとえば、"movie") があり、それを更新して新しい値 "movie,music" を取得すると、トリガーが実行されcol_updated_on
、現在のタイムスタンプが必要になります。
ただし、column
NULL を更新して新しい値「movie」を取得すると、col_updated_on
列には古いタイムスタンプが表示されます。
この状態を確認するためにどのような変更を行う必要があるか教えてください。
返信ありがとうございます。
別の質問があります。以下の疑似は可能ですか??
これが私の2つのテーブルです -
myTable
(id, someId, col_updated_on);
myOtherTable
(id、col1、col2);
myTable
myOtherTable
.someId は.idと 1 対 1 の関係にあります
.col1 と.col2 が更新さmyTable
れるたびに .col_updated_onを更新したい。どうすればいいですか?「BEFORE UPDATE」または「AFTER UPDATE」を使用する必要がありますか?myOtherTable
myOtherTable