问题
I have a SQL Server 2000 database instance that is rarely updated. I also have a database table which has no columns holding each row's created date or modified date.
Is there any way that I can determine the last time an update or insert was performed on the database as a whole, so that I can at least put a bound on when the specific records in the table may have changed?
Note: I am looking for information about transactions that have already occurred. Triggers may help we should I require this again in the future, but does not address the problem I'm trying to describe.
If it can be done, how can I do it?
回答1:
The database's log file may have some information that is useful to your quest. AFAIK, the database itself doesn't store a "last updated" date.
回答2:
Depending on the size of the database and the number of tables you could put a trigger in place that would handle updates/or inserts and log that to another table, potentially logging the table name and a timestamp, it isn't elegant but could work. and Doesn't require any modification to the rest of the db.
来源:https://stackoverflow.com/questions/201990/how-can-i-determine-the-last-time-any-record-changed-in-a-specific-sql-server-20