2009-05-08 17 views

答えて

1

SQL Server 2008を使用している場合は、Change Data Captureを調べることができます。これは、私が想像する新しい監査機能です。

もう1つの可能性は、ID列をテーブルに配置することです。その後、列の降順で注文することができます。

DBCC Logコマンドを試すこともできます。これがあなたの望むものを与えるかどうかは分かりません。あなたに与えられたデータを解釈できるようになるまでには、いくらかの作業が必要になるかもしれません。

+0

しかし、最近追加された行だけが表示され、追加された行は表示されません。 – kristian

+1

正解ですので、ID列は良い考えではないと思います。データキャプチャの変更は、SQL Server 2008を使用している場合の最適なソリューションです – JoshBerke

0

使用しているdbmsにログ機能があり、それを有効にしている場合はyesです。システムログテーブルを照会することができます。 oracleには、デフォルトで有効になっているようなものがあります。 sqlserverを使用している場合は、ロギングメカニズムを有効にする必要があると思います。

1

なし。 SQL Serverは、この機能をそのまま使用することはできません。

0

私が知っている唯一の方法は、バックアップ+トランザクションログをある時点に復元することです。次に、行の有無、洗浄、すすぎ、繰り返しを確認することができます。これがsql 2000の場合は、そこにいくつかのログパーサーがあると思いますので、行のどの部分がコミットされたかを調べるのに役立ちます。それがSQL 2005/2008の場合、私はまだログパーサーがあるとは思わない。

0

SqlServerの場合は、Red GateツールセットのようなSQLログビューア/アナライザを除外します。

1

日付の挿入や更新などのメタデータを表示したい場合は、これを設定する必要があります。挿入された日付を確認する最も簡単な方法は、日付挿入された列を追加することです。より困難な方法は、監査を追加することです(これはビジネスクリティカルな情報を含むすべてのプロダクションシステムがとにかく持っているはずです)。 SQL Server 2008では、トリガーや外部監査システムやデータ追跡の変更が行われる可能性がありますが、これらの方法は自動的に設定されないため、システムをセットアップする前に追加したデータを参照することはできません。誰かが最近レコードを追加した場合、ログを読み込むツールを使ってトランザクションログからいつ追加されたのかを知ることができますが、これは通常は高価な方法です。ほとんどの監査ソリューションはそうです。

関連する問題