SQL सर्वर में, डेटाबेस मेल सीधे खातों के बजाय ईमेल भेजने के लिए प्रोफाइल का उपयोग करता है।
इसलिए आपको पहले एक प्रोफ़ाइल बनानी होगी, और एक खाता बनाना होगा, फिर खाते को प्रोफ़ाइल में जोड़ना होगा। आपको msdb . में एक उपयोगकर्ता को भी अनुदान देना होगा प्रोफ़ाइल तक डेटाबेस पहुंच।
किसी डेटाबेस मेल खाते को T-SQL के साथ प्रोफ़ाइल में जोड़ने के लिए, sysmail_add_profileaccount_sp
का उपयोग करें msdb . में संग्रहीत कार्यविधि डेटाबेस।
उदाहरण
टी-एसक्यूएल का उपयोग करके डेटाबेस मेल खाते को डेटाबेस मेल प्रोफ़ाइल में जोड़ने का एक उदाहरण यहां दिया गया है।
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'DB Admin Profile',
@account_name = 'DB Admin',
@sequence_number = 1;
इस मामले में मैं "डीबी एडमिन" खाते को "डीबी एडमिन प्रोफाइल" प्रोफाइल में जोड़ता हूं।
यह मानता है कि प्रोफ़ाइल और खाता पहले से मौजूद है।
आप एक डेटाबेस मेल प्रोफ़ाइल में एकाधिक खाते जोड़ सकते हैं। अनुक्रम संख्या उस क्रम को निर्धारित करती है जिसमें प्रोफ़ाइल में खातों का उपयोग किया जाता है। डेटाबेस मेल उस खाते से शुरू होता है जिसमें सबसे कम अनुक्रम संख्या होती है। यदि वह खाता विफल हो जाता है, तो अगली उच्चतम अनुक्रम संख्या वाले खाते का उपयोग किया जाता है, और इसी तरह।
यदि एक ही क्रम संख्या के साथ एक से अधिक खाते मौजूद हैं, तो डेटाबेस मेल किसी दिए गए ईमेल संदेश के लिए उनमें से केवल एक खाते का उपयोग करेगा।
हालांकि, इस बात की कोई गारंटी नहीं है कि बाद के संदेशों के लिए उसी खाते का उपयोग किया जाएगा। उदाहरण के लिए, अगर दो खातों की क्रम संख्या 1 है, तो आपको कुछ ईमेल एक खाते से और कुछ दूसरे खाते से प्राप्त हो सकते हैं।
खाता/प्रोफ़ाइल आईडी निर्दिष्ट करें
आप वैकल्पिक रूप से उनके नाम के बजाय प्रोफ़ाइल आईडी और/या खाता आईडी निर्दिष्ट कर सकते हैं।
इसलिए, हम कुछ इस तरह दिखने के लिए पिछले उदाहरण को बदल सकते हैं:
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_id = 1,
@account_id = 1,
@sequence_number = 1;
यह स्पष्ट रूप से मानता है कि ये विचाराधीन खातों के लिए आईडी हैं।
ध्यान दें कि या तो नाम या आईडी प्रदान की जानी चाहिए।
साथ ही, आईडी प्रदान करते समय, उन्हें int . के रूप में प्रदान किया जाता है ।
ध्यान दें कि sysmail_add_profileaccount_sp
संग्रहीत कार्यविधि msdb . में है डेटाबेस, और इसका स्वामित्व dbo . के पास है स्कीमा। इसलिए, यदि आप इसे msdb . के बाहर से निष्पादित करते हैं, तो आपको तीन भागों के नामकरण का उपयोग करने की आवश्यकता होगी डेटाबेस।