Date object last modified

2019-04-26 21:10发布

How can I find out the date a MS SQL Server 2000 object was last modified?

I need to get a list of all the views, procs, functions etc that were modified since Aug 15th. In sysObjects I can see the date objects were created but I need to know when they were last altered.

NB: this is an SQL 2000 database.

4条回答
我想做一个坏孩纸
2楼-- · 2019-04-26 21:29

I have got confirmed Answer for above any procedure History for modified date with below query

Step -1 Execute the procedure on DB

SELECT name, create_date, modify_date 
FROM sys.objects
WHERE type = 'p' 

Step -2 Then copy the text to Excel with headers

select route coloumn and then paste the exact procedure name into ^F window and press enter you will get exact modified date.

Regards, Sudhir Pune

查看更多
放我归山
3楼-- · 2019-04-26 21:32

I know this is a bit old, but it is possible to view the last altered date of stored procs and functions with this query:

USE [Your_DB]    
SELECT * FROM INFORMATION_SCHEMA.ROUTINES

Just thought it would be nice to mention this since I searched for this very solution and this thread was misleading.

查看更多
Rolldiameter
4楼-- · 2019-04-26 21:38

Note that SQL Server actually does not record the last modification date. It does not exist in any system tables.

The Schema Changes History report is actually constructed from the Default Trace. Since many admins (and web hosts) turn that off, it may not work for you. Buck Woody had a good explanation of how this report works here. The data is also temporary.

For this reason, you should never RELY on the Schema Changes History report. Alternatives:

  • Use DDL Triggers to log all schema modification to a table of your choosing.
  • Enforce a protocol where views and procs are never altered, they are only dropped and recreated. This means the created date will also be the last updated date (this does not work with tables obviously).
  • Vigilantly version your SQL objects and schema in source control.

--

Edit: saw that this is SQL 2000. That rules out Default Trace and DDL Triggers. You're left with one of the more tedious options I listed above.

查看更多
兄弟一词,经得起流年.
5楼-- · 2019-04-26 21:48

This is not always correct because modify_date is Date the object was last modified by using an ALTER statement. If the object is a table or a view, modify_date also changes when a clustered index on the table or view is created or altered.

查看更多
登录 后发表回答