2012-08-06 9 views

उत्तर

52

इस मामलों में जहां प्रक्रिया स्पष्ट रूप से काम कदम में संदर्भित है पर कब्जा होगा:

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

यह कुछ और ही है कि नौकरी से कहा जाता है के द्वारा कहा जाता है, या कमांड गतिशील एसक्यूएल के साथ निर्माण किया है यदि यह, नीचे ट्रैक करने के लिए थोड़ा और मुश्किल हो सकता है। ध्यान दें कि यदि आपका प्रक्रिया नाम स्वाभाविक रूप से अन्य कोड, टिप्पणियों आदि में भी दिखाई दे सकता है, तो यह झूठी सकारात्मक उत्पन्न कर सकता है।

+0

इस के लिए थोड़ा सा संशोधन: 'घोषणा @Search varchar (255) सेट @ खोजें = 'searchstring' चयन j.name, s.step_id, s.step_name msdb.dbo.sysjobsteps रों, msdb रूप से। jbo12ysके रूप में dbo.sysjobs जहां s.job_id = j.job_id और s.command LIKE '%' + @ खोज + '%' ' –

संबंधित मुद्दे