0

MySQL の個々のテーブルのミニ監査システムを作成しようとしています。

INSERT基本的な//コマンドの操作はうまくいきましたがUPDATEDELETE現在、監査に関心のあるテーブルではINSERT ... ON DUPLICATE KEY UPDATE.

トリガーON BEFORE INSERTを使用することで、このイベントが発生していることを知ることができますが、関心のあるデータの半分しか取得できませ NEW.valuesOLD.values。既存のテーブルを使用してクエリを実行できると思いますが、NEW.IDパフォーマンスと信頼性についてはわかりません。

OLD.valuesデータを折りたたむための良いアイデアなどをどこかで読んだので、変更イベントごとに古い値と新しい値の両方を保存しているため、必要です...

UPDATEMySQL 5.0 (または新しい GA リリース) で、トリガーにいるかのようにこれらの値を確実に取得する方法はありますか?

編集:別のしわ:

NEW.values更新後のデータと一致していないようです。それらは、実際にレコードに入るデータでは INSERTなく、ステートメントと一致します。ON DUPLICATE KEY UPDATE

4

1 に答える 1

0

トリガーイベントON AFTER UPDATE ON DUPLICATE KEY UPDATE変化を捉えているようです。ここから、OLD/NEW 値を取得し、必要なロギングを実行できました。

于 2013-03-01T18:25:31.303 に答える