2011-08-24 12 views

risposta

6

Questo elenco di tutte le stored procedure con la loro creazione e modificate le date:

SELECT name, modify_date 
FROM sys.objects 
WHERE type = 'P' 
    AND modify_date >= DATEADD(Day, -1, CONVERT(Date, GETDATE())) 
ORDER BY modify_date DESC; 

EDIT: Dal modify_date sarà sempre uguale o dopo create_date ... Si noti inoltre che si può solo utilizzare sys.procedures come un'altra risposta menzionata.

+1

Dal momento che l'OP si riferisce a "Yesterday", è probabilmente una migliore idea per mettere a nudo la parte di tempo della giornata. –

2

Prova questo:

SELECT name, create_date, modify_date 
FROM sys.objects 
WHERE type = 'P' 
AND modify_date >= DATEADD(day, -1, getdate()) 
ORDER BY modify_date desc 
+1

Poiché l'OP si riferisce a "Ieri", è probabilmente un'idea migliore includere l'intera giornata. –

5

Information_Schema ha diverse viste per aiutare a rivedere vari oggetti. Routines è uno di loro

select * 
from INFORMATION_SCHEMA.ROUTINES 
Where CREATED > DATEADD(dd, DATEDIFF(dd, 0, getdate()-1), 0) 
Order by CREATED Desc 

Le ultime due colonne sono per Creato e LAST_MODIFIED.

4

Usa sys.procedures. Più diretto di sys.objects (non è necessario filtrare sul tipo) e - sebbene meno portatile di INFORMATION_SCHEMA - le viste del catalogo sys. continuano a essere mantenute ed estese con informazioni sulle nuove funzionalità, mentre lo INFORMATION_SCHEMA non lo è.

Ad esempio, per trovare tutte le stored procedure creati o modificati da ieri a mezzanotte:

DECLARE @yesterday DATE = DATEADD(DAY, -1, CURRENT_TIMESTAMP); 

SELECT OBJECT_SCHEMA_NAME([object_id]), name, create_date, modify_date 
    FROM sys.procedures 
    WHERE modify_date >= @yesterday 
    ORDER BY modify_date DESC; 
Problemi correlati