テーブル内の変更されたエントリをチェックして監査ログに渡す方法が必要です。テーブル構造から抽象化する必要があります。
例えば:
CREATE TRIGGER table1_update
BEFORE UPDATE ON table1
FOR EACH ROW BEGIN
DECLARE i_column_name varchar(32);
DECLARE done INT;
DECLARE cursor1 CURSOR FOR SELECT column_name FROM information_schema.columns WHERE table_name = 'table1';
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN cursor1;
REPEAT
FETCH cursor1 INTO i_column_name;
IF NOT done THEN
--pass the variable column_name and its old.i_column_name and new.i_column_name values to the audit table
END IF;
UNTIL done END REPEAT;
CLOSE cursor1;
END$$
INSERT、UPDATE、および DELETE トリガーごとにカスタム ビルドするために監査する必要があるテーブルが多すぎます。いろいろ試してみましたが、運が悪いと思います。誰にもアイデアはありますか?