Stored Procedureleri son güncelleme tarihine göre sıralamak

SQL Management Studio nun bana göre en önemli eksiklerinden birisi Stored Procedure lerin son güncelleme zamanını önyüz kısmında göstermemesidir. Bu eksiklik sayesinde biz developerlar genellikle SP lerin son güncelleme tarihini görebilmek için çeşitli taklalar atarız. Bunlardan bir tanesi de aşağıdaki örnekte yer alır.

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

Bu SQL komutu ile son güncelleme tarihi 1 hafta öncesine kadar olan Stored Procedure lerin listesini verir

MS SQL Server da Stored Procedure ler içerisinde arama yapmak

Aşağıdaki kod içerisinde xxx yazan yere istediğiniz kelimeyi yazarak, o kelimenin içerisinde geçtiği Store Procedure leri listeleyebilirsiniz.

SELECT  obj.Name as SPName,
		--modu.definition as SPDefinition,
        obj.create_date as CreationDate,
        obj.modify_date as LastUpdateDate
FROM    sys.sql_modules modu
        INNER JOIN sys.objects obj ON modu.object_id = obj.object_id
WHERE   obj.type = 'P'
        AND modu.definition LIKE '%xxx%'
Order By obj.Name

Örneğin MEMBERS adında bir tablonuz olsun. Bu tabloyla ilgili işlem yapan Stored Procedure leri bulmak için aşağıdaki SQL i çalıştırabilirsiniz:

SELECT  obj.Name as SPName,
		--modu.definition as SPDefinition,
        obj.create_date as CreationDate,
        obj.modify_date as LastUpdateDate
FROM    sys.sql_modules modu
        INNER JOIN sys.objects obj ON modu.object_id = obj.object_id
WHERE   obj.type = 'P'
        AND modu.definition LIKE '%MEMBERS%'
Order By obj.Name