0

SQL 2005 データベースの特定のテーブルに対して最後の挿入/更新がいつ行われたかを調べようとしています。データにはタイムスタンプがないため、そのようにはわかりません。これを手伝ってくれるdmvはありますか?

ありがとう、HP

重複:特定のテーブルに作用する最近の SQL 更新操作を見つける方法 (SQL Server 2005)

4

2 に答える 2

0

私はあなたを助けることができるリンクを見つけました:

blog.sqlauthority.com からの最終更新時刻

その投稿の一部に次のコードが含まれています。「AdventureWorks」はカタログ名、「test」はテーブル名です。

SELECT OBJECT_NAME(OBJECT_ID) AS DatabaseName, last_user_update,*
FROM sys.dm_db_index_usage_stats
WHERE database_id = DB_ID( 'AdventureWorks')
AND OBJECT_ID=OBJECT_ID('test')
于 2009-05-20T00:24:49.803 に答える
0

このコード:

SELECT OBJECT_NAME(OBJECT_ID) AS DatabaseName, last_user_update,*
FROM sys.dm_db_index_usage_stats
WHERE database_id = DB_ID( 'AdventureWorks')
AND OBJECT_ID=OBJECT_ID('test')

正常に動作しますが、ソース テーブル sys.dm_db_index_usage_stats を見ると、テーブルがここに表示されるようにするには、テーブルにインデックスを付ける必要があることがわかります。すべてのテーブルにインデックスが作成されていると思われるかもしれませんが、データ ウェアハウス用にスナップショットを取得しており、これらのテーブルにインデックスを作成する必要はありませんが、最後に更新された日時を表示したいと考えています。

インデックスなしでSQLでテーブルを作成し、それを更新/データを追加すると表示されますが、このsys.dm_db_index_usage_statsが更新されます。SSIS でテーブルを更新しましたが、sys.dm_db_index_usage_stats にテーブルのエントリがありません。

于 2013-07-23T10:25:28.873 に答える