How can I quickly identify most recently modified stored procedures in SQL Server

instead of using sysobjects which is not recommended anymore use sys.procedures

select name,create_date,modify_date
from sys.procedures
order by modify_date desc

you can do the where clause yourself but this will list it in order of modification date descending


Bob OMalley probably solved his problem long time ago but hopefully new readers will find this useful.

There are some special cases where scripts might not give optimal results.

One is deleting stored procedures or other objects in dev environment – you won’t catch this using system views because object won’t exist there any longer.

Also, I’m not really sure this approach can work on changes such as permissions and similar.

In such cases its best to use some third party tool just to double check nothing is missed.

I’ve successfully used ApexSQL Diff in the past for similar tasks and it worked really good on large databases with 1000+ objects but you can’t go wrong with SQL Compare that’s already mentioned here or basically any other tool that exists on the market.

Disclaimer: I’m not affiliated with any of the vendors I’m mentioning here but I do use both set of tools (Apex and RG) in the company I work for.


You can execute this query to find all stored procedures modified in the last x number of days:

SELECT name
FROM sys.objects
WHERE type = 'P'
    AND DATEDIFF(D,modify_date, GETDATE()) < X