2012-08-06 12 views

risposta

52

Questo catturerà casi in cui la procedura viene esplicitamente menzionato nell'obiettivo di passaggio di processo:

SELECT j.name 
    FROM msdb.dbo.sysjobs AS j 
    WHERE EXISTS 
    (
    SELECT 1 FROM msdb.dbo.sysjobsteps AS s 
     WHERE s.job_id = j.job_id 
     AND s.command LIKE '%procedurename%' 
); 

Se si chiama da qualcos'altro che viene chiamato dal lavoro, o il comando è costruito con SQL dinamico, questo potrebbe essere un po 'più difficile da rintracciare. Si noti inoltre che se il nome della procedura può anche apparire in modo naturale in altri codici, commenti, ecc., Potrebbe produrre falsi positivi.

+0

piccola modifica a questo: 'DICHIARARE @Search varchar (255) SET @ Ricerca = 'SearchString' SELEZIONA j.name, s.step_id, s.step_name DA msdb.dbo.sysjobsteps AS s, msdb. dbo.sysjobs come j WHERE s.job_id = j.job_id AND s.command LIKE '%' + @ Cerca + '%' ' –

Problemi correlati