2

1) Envers 監査証跡の範囲を制限する方法はありますか?

Envers が最適な 1 週間の監査証跡が必要ですが、その期間を超えたデータ保持に関する契約上の義務もあります。

1.1) RevisionTime に基づいて _AUD テーブルを切り捨てるように envers を設定することは可能ですか?

1.2) 時限クエリを使用してデータベースから直接データを削除すると、休止状態が崩れたり不平を言ったりしますか? または、監査履歴を削除するための代替の API フレンドリーな方法はありますか?

4

1 に答える 1

1

1.1) いいえ

1.2) いいえ。リビジョン テーブルには常にタイムスタンプがあり、それを使用してデータを削除できます。on_delete カスケードがあり、生成されたスキーマにそれらがある場合 (通常はそうなります)、単に古いリビジョンを削除するだけで十分です。すべての監査データを削除する必要があります (_aud テーブルのリビジョン番号フィールドには制約があります)。

于 2012-07-05T15:49:13.343 に答える