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

SQL सर्वर (T-SQL) में किसी प्रोफ़ाइल के भीतर डेटाबेस मेल खाते की अनुक्रम संख्या कैसे बदलें

यदि आपने पहले ही किसी प्रोफ़ाइल में डेटाबेस मेल खाता जोड़ लिया है, लेकिन अब आप अनुक्रम संख्या बदलना चाहते हैं, तो आप sysmail_update_profileaccount_sp के साथ ऐसा कर सकते हैं संग्रहीत प्रक्रिया।

ऐसा करते समय आपको अकाउंट और प्रोफाइल दोनों का नाम या आईडी देना होगा। ऐसा इसलिए है क्योंकि आपको यह निर्दिष्ट करने की आवश्यकता है कि आप किस प्रोफ़ाइल/खाता संबद्धता को अपडेट करना चाहते हैं।

उदाहरण

प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है:

EXECUTE msdb.dbo.sysmail_update_profileaccount_sp  
    @profile_name = 'DB Admin Profile',
    @account_name = 'DB Admin',
    @sequence_number = 2;

यह उदाहरण "DB व्यवस्थापक प्रोफ़ाइल" नामक प्रोफ़ाइल के भीतर "DB व्यवस्थापक" नामक खाते की अनुक्रम संख्या को बदलता है।

इस मामले में, मैंने क्रम संख्या को 2 में बदल दिया है, जिसका अर्थ है कि "DB व्यवस्थापक" खाते का उपयोग केवल तभी किया जाएगा जब पहला खाता विफल हो जाए।

प्रोफाइल/खाता आईडी का उपयोग करना

इस उदाहरण में मैं उनके नाम के बजाय प्रोफ़ाइल और खाता आईडी का उपयोग करता हूं:

EXECUTE msdb.dbo.sysmail_update_profileaccount_sp  
    @profile_id = 1,
    @account_id = 1,
    @sequence_number = 3;

आईडी और नाम के संयोजन का उपयोग करना

आप वैकल्पिक रूप से एक की आईडी और दूसरे का नाम प्रदान कर सकते हैं।

उदाहरण के लिए:

EXECUTE msdb.dbo.sysmail_update_profileaccount_sp 
    @profile_name = 'DB Admin Profile',
    @account_id = 1,
    @sequence_number = 4;

या इसके विपरीत:

EXECUTE msdb.dbo.sysmail_update_profileaccount_sp
    @profile_id = 1,
    @account_name = 'DB Admin',
    @sequence_number = 1;

सीक्वेंस नंबर कैसे काम करता है?

आप एक डेटाबेस मेल प्रोफ़ाइल में एकाधिक खाते जोड़ सकते हैं। अनुक्रम संख्या उस क्रम को निर्धारित करती है जिसमें मेल भेजते समय उन खातों का प्रोफ़ाइल में उपयोग किया जाता है। डेटाबेस मेल उस खाते से शुरू होता है जिसमें सबसे कम अनुक्रम संख्या होती है। यदि वह खाता विफल हो जाता है, तो अगले उच्चतम क्रम संख्या वाले खाते का उपयोग किया जाता है, और इसी तरह।

यदि एक ही क्रम संख्या के साथ एक से अधिक खाते मौजूद हैं, तो डेटाबेस मेल किसी दिए गए ईमेल संदेश के लिए उनमें से केवल एक खाते का उपयोग करेगा।

हालांकि, इस बात की कोई गारंटी नहीं है कि बाद के संदेशों के लिए उसी खाते का उपयोग किया जाएगा। उदाहरण के लिए, अगर दो खातों की क्रम संख्या 1 है, तो आपको एक खाते से कुछ ईमेल और दूसरे खाते से कुछ ईमेल प्राप्त हो सकते हैं।

मुझे यह बताना चाहिए कि, इस Microsoft लेख के अनुसार, जब आप एक नया ईमेल संदेश भेजते हैं, तो डेटाबेस मेल वास्तव में उस अंतिम खाते से शुरू होता है जिसने सफलतापूर्वक संदेश भेजा था , या वह खाता जिसकी क्रम संख्या सबसे कम है यदि अभी तक कोई संदेश नहीं भेजा गया है।

तथ्य यह है कि यह उस अंतिम खाते से शुरू होता है जिसने सफलतापूर्वक संदेश भेजा था, sysmail_add_profileaccount_sp के आधिकारिक दस्तावेज़ में उल्लेख नहीं किया गया है या sysmail_update_profileaccount_sp

किसी भी तरह से, यह ध्यान रखने वाली बात है, और यदि आपका DB मेल आपके अनुक्रम संख्याओं को अनदेखा करता हुआ प्रतीत होता है, तो यह आपके बालों को झड़ने से बचा सकता है।

संग्रहीत प्रक्रिया का स्थान

ध्यान दें कि sysmail_update_profileaccount_sp संग्रहीत कार्यविधि msdb . में है डेटाबेस, और यह dbo . के स्वामित्व में है स्कीमा। इसलिए, यदि आप इसे msdb . के बाहर से निष्पादित करते हैं, तो आपको तीन भागों के नामकरण का उपयोग करने की आवश्यकता होगी डेटाबेस।

खाता और प्रोफ़ाइल जानकारी कैसे लौटाएं

निम्नलिखित लेख खाता और प्रोफ़ाइल जानकारी वापस करने के लिए निर्देश प्रदान करते हैं।

  • SQL सर्वर में डेटाबेस मेल खातों की सूची प्राप्त करें
  • SQL सर्वर में डेटाबेस मेल प्रोफाइल की सूची लौटाएं


  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 सर्वर में स्थानीय और वैश्विक अस्थायी तालिकाओं के बीच अंतर

  2. SQL सर्वर में स्वचालित डेटाबेस परीक्षण पुनर्स्थापित करें

  3. SQL सर्वर (T-SQL) में TRANSLATE () फ़ंक्शन कैसे काम करता है

  4. आप डेटाबेस में व्यू क्यों बनाते हैं?

  5. मान को अल्पविराम से अलग करने के लिए COALESCE फ़ंक्शन का उपयोग करना