SQL Server Vinden Welke Taken Zijn het Uitvoeren van een Procedure

Is er een manier om uit te vinden welke taken worden met behulp van een bepaalde opgeslagen procedure?

 

One Reply
  1. 72

    Dit vast te leggen gevallen waar de procedure wordt expliciet verwezen in de baan stap:

    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%'
      );

    Als het wordt genoemd door iets anders, dat is de naam van de taak of de opdracht is uitgevoerd met dynamic SQL, dit is misschien een beetje moeilijker op te sporen. Merk ook op dat als de procedure kan ook verschijnen uiteraard in een andere code, opmerkingen, etc. dat kan valse positieven produceren.

    • Lichte wijziging van deze: DECLARE @Search varchar(255) SET @Search='searchstring' SELECT j.name, s.step_id, s.step_name FROM msdb.dbo.sysjobsteps AS s, msdb.dbo.sysjobs as j WHERE s.job_id = j.job_id AND s.command LIKE '%'[email protected]+'%'

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *