Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर में sp_help_jobschedule का उपयोग करना

SQL सर्वर में, sp_help_jobschedule संग्रहीत कार्यविधि नौकरियों के शेड्यूलिंग के बारे में जानकारी लौटाती है।

यह आलेख उदाहरणों सहित इस संग्रहीत कार्यविधि का एक सिंहावलोकन प्रदान करता है।

सिंटैक्स

आधिकारिक वाक्य रचना इस प्रकार है:

sp_help_jobschedule { [ @job_id = ] job_id | [ @job_name = ] 'job_name' }  
     [ , [ @schedule_name = ] 'schedule_name' ]  
     [ , [ @schedule_id = ] schedule_id ]  
     [ , [ @include_description = ] include_description ]

जब आप sp_help_jobschedule . पर कॉल करते हैं , आपको या तो कार्य का नाम या उसकी आईडी (लेकिन दोनों नहीं), या शेड्यूल आईडी प्रदान करनी होगी। आप शेड्यूल का नाम भी पास कर सकते हैं लेकिन केवल जॉब आईडी या उसके नाम के संयोजन में।

स्वीकृत संयोजन थोड़ा मुश्किल है। मूल रूप से, यह इस प्रकार है:

अगर schedule_id निर्दिष्ट है, न तो job_id न ही job_name निर्दिष्ट किया जा सकता है। अन्यथा, job_id या job_name पैरामीटर का उपयोग schedule_name . के साथ किया जा सकता है ।

हालांकि, आप schedule_id . का उपयोग नहीं कर पाएंगे यदि एक शेड्यूल एकाधिक कार्यों से जुड़ा हुआ है।

ध्यान दें कि sp_help_jobschedule msdb . में है डेटाबेस, इसलिए इसे वहां से चलाने की जरूरत है। आप इसे msdb . पर स्विच करके या तो कर सकते हैं डेटाबेस (जैसे USE msdb . के साथ) ), या डेटाबेस नाम और स्कीमा (यानी msdb.dbo.sp_help_jobschedule के साथ प्रक्रिया को अर्हता प्राप्त करके) )।

उदाहरण

किसी विशिष्ट कार्य से जुड़ी सभी अनुसूचियों को वापस करने का तरीका प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है:

EXEC sp_help_jobschedule
	@job_name = 'SqlAgentTest';

परिणाम:

यह शेड्यूल की एक सूची देता है जो @job_name . के साथ निर्दिष्ट कार्य से जुड़ी होती है तर्क।

वैकल्पिक रूप से, मैं @job_id पास कर सकता था :

EXEC sp_help_jobschedule
	@job_id = '8A6E1BFF-9F46-4FF9-8E63-ABC8B224B6F8';

लेकिन उस स्थिति में, मैं @job_name . का उपयोग नहीं कर सका (यह या तो एक है या दूसरा)।

जॉब आईडी का उपयोग करते समय, यदि आप चाहें तो पैरामीटर नाम को छोड़ सकते हैं:

EXEC sp_help_jobschedule '8A6E1BFF-9F46-4FF9-8E63-ABC8B224B6F8';

@schedule_id का उपयोग करना पैरामीटर

आप वैकल्पिक रूप से इसकी आईडी के आधार पर शेड्यूल प्राप्त कर सकते हैं:

EXEC sp_help_jobschedule
	@schedule_id = 15;

यह तब तक ठीक काम करता है जब तक शेड्यूल एकाधिक कार्यों से जुड़ा न हो।

यहां बताया गया है कि क्या होता है जब एक शेड्यूल कई कार्यों से जुड़ा होता है:

EXEC sp_help_jobschedule
	@schedule_id = 14;

परिणाम:

Msg 14369, Level 16, State 1, Procedure sp_help_jobschedule, Line 69 [Batch Start Line 22]
 The schedule ID "14" is used by more than one job. Specify the job_id.

और भले ही यह job_id . निर्दिष्ट करने के लिए कहता है , अगर आप ऐसा करते हैं, तो आपको schedule_id . को हटाना होगा (जैसा कि बताया गया है, अगर आप schedule_id . पास करते हैं , आप job_name . शामिल नहीं कर सकते या job_id )।

इसे प्रदर्शित करने के लिए, यदि मैं केवल job_id . जोड़ दूं और schedule_id रखें वहां, मुझे निम्न त्रुटि मिलती है।

EXEC sp_help_jobschedule
	@job_id = '8A6E1BFF-9F46-4FF9-8E63-ABC8B224B6F8',
	@schedule_id = 14;

परिणाम:

Msg 14273, Level 16, State 1, Procedure sp_help_jobschedule, Line 51 [Batch Start Line 22]
 You must provide either @job_id or @job_name (and, optionally, @schedule_name), or @schedule_id.

विवरण शामिल करें

एक और चीज जो आप कर सकते हैं वह यह निर्दिष्ट करना है कि शेड्यूल के विवरण को शामिल करना है या नहीं।

डिफ़ॉल्ट रूप से, विवरण परिणाम सेट में शामिल नहीं होता है। दरअसल, schedule_description कॉलम है शामिल है, लेकिन इसमें विवरण शामिल नहीं है, जब तक कि आप स्पष्ट रूप से इसका अनुरोध नहीं करते। यदि आप इसका अनुरोध नहीं करते हैं, तो schedule_description कॉलम प्रदर्शित करता है (Description not requested.)

@include_description पैरामीटर बिट . है , 0 . के डिफ़ॉल्ट के साथ , जिसका अर्थ है कि यह विवरण प्रदर्शित नहीं करता है। 1 . का मान पास करना विवरण में परिणाम प्रदर्शित किया जा रहा है।

EXEC sp_help_jobschedule
	@job_name = 'SqlAgentTest',
	@include_description = 1;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं एक बड़े बफर को बनाए बिना SQL सर्वर BLOB में .NET ऑब्जेक्ट का एक बड़ा ग्राफ कैसे क्रमबद्ध करूं?

  2. SQL सर्वर में उच्च गंभीरता त्रुटियों से निपटना

  3. SQL Server 2008 त्रुटि कोड से प्राथमिक कुंजी दोहराव की पहचान कैसे करें?

  4. चुनिंदा वक्तव्य में मामला

  5. SQL सर्वर में किसी भिन्न डेटाबेस से OBJECT_NAME () कैसे प्राप्त करें