Sql Server データベースには、mdf ファイルと ldf ファイルの両方があります。Mdf はデータで、ldf は変更ログです。データベース内のすべての「データ」の変更を追跡する必要があります。これまで、同じ名前で dcr (データ変更レコード) スキーマを持つミラー テーブルを使用してきました。これらは、挿入、更新、削除のトリガーによって設定されます。正常に動作しますが、かなりのオーバーヘッドです。
私は現在、このアプリケーションを更新しているので、ほとんど使用されていないが何らかの形で「必要な」機能であるこの機能を再検討する良い機会になると考えました。これに Sql Server ldf ファイルを使用できますか? 列の変更ごとにすべてのデータが存在し、クエリは簡単ですか?
たとえば、現在、ユーザーは 2013 年 1 月 1 日 14 時 00 分に顧客 x のレコードを私に渡すことができます。これは、dcr.Customer テーブルに対する単なる「間」クエリです。LDFでこれを行うことはできますか?
そうでない場合、これに対するオープンソースのオプションはありますか? それとも、トリガーによる変更追跡はどのように行われるのでしょうか?