フィールドを持つテーブルがあります:
- ID
- データ1
- データ2
次に、更新後にテーブルの変更をログに書き込むトリガーを設定します。
CREATE TRIGGER `update_data` AFTER UPDATE on `data_table`
FOR EACH ROW
BEGIN
IF (NEW.data1 != OLD.data1) THEN
INSERT INTO data_tracking set old_value = OLD.data1, new_value = NEW.data1, field = "data1";
END IF;
-- similar for data2
END$$
また、変更を行ったユーザーを data_tracking テーブルに記録したいのですが、このユーザーは、トリガーをトリガーする元の UPDATE の一部ではありません。どのユーザーを記録する必要があるかをトリガーに知らせる方法ですか?
これは、複数の登録ユーザーを持つ PHP ベースの Web サービスであり、Web サイト経由で記録を変更できます - トリガーに追加したいユーザーです。