मौजूदा SQL सर्वर लॉगिन को उसी नाम के मौजूदा SQL सर्वर डेटाबेस उपयोगकर्ता से कैसे जोड़ा जाए


124

क्या एक ही नाम के डेटाबेस सर्वर के लिए लॉगिन के लिए एक एकल डेटाबेस के उपयोगकर्ता को जोड़ने के लिए एक SQL सर्वर कमांड है ?

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

डेटाबेस सर्वर - डिफ़ॉल्ट इंस्टेंस
डेटाबेस: TestDB

सर्वर लॉगिन - TestUser
TestDB पर मौजूदा उपयोगकर्ता - TestUser

यदि मैं TestUserलॉगिन को TestDBडेटाबेस का उपयोगकर्ता बनाने की कोशिश करता हूं , तो "उपयोगकर्ता, समूह, या भूमिका" पहले से मौजूद है।

क्या किसी को डीबी उपयोगकर्ता को सर्वर लॉगिन में असाइन करने का एक आसान तरीका पता है ?

जवाबों:


229

नए रास्ते (SQL 2008 के बाद) का उपयोग है ALTER उपयोगकर्ता

ALTER USER OrphanUser WITH LOGIN = correctedLoginName;

क्या यह नया प्रति SQL2008 है?
२०:२

2
SQL सर्वर 2005 के बाद से। Gratzy के लिंक वास्तव में यह संदर्भित करता है।
gbn

मैंने इसे SQL सर्वर 2012 में उपयोग किया था और मैं इसकी पुष्टि कर सकता हूं
Ubercoder

6

मुझे लगता है कि यह है sp_change_users_login। यह थोड़ा समय रहा है, लेकिन मैं ऐसा तब करता था जब डेटाबेस को अलग करके फिर से तैयार करता था।


1
यदि Windows उपयोगकर्ता लॉगिन का उपयोग करके SQL लॉगिन बनाया गया था, तो sp_change_users_login काम नहीं करेगा - मैं आज इस में भाग गया, मुझे इस प्रश्न पर ले गया। msdn.microsoft.com/en-us/library/ms174378.aspx
टॉम मिलर

यह विधि अब विधि के पक्ष में पदावनत है ALTER USER, ऊपर
लियाम

@ आलम क्या आपने वास्तव में इस जवाब को वोट दिया है जो 8 साल पुराना है और स्वीकार किए गए जवाब का संदर्भ दें जो कि 8 साल पुराना है, जिसमें पहले से ही यह जानकारी है कि इसका पदावनत किया गया है?
ग्राज़ी

2

मैंने sp_change_users_loginप्रक्रिया को पूरा करने के लिए उपयोग किया है, मुझे लगता है, वह परिदृश्य।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.