2013-04-16 4 views
20

मैं इस क्वेरी का उपयोग कर एक उपयोगकर्ता के लिए एक स्टोर प्रक्रिया के लिए अनुमतियां जोड़ने के लिए कोशिश कर रहा हूँ नहीं है, 'उपयोगकर्ता' मिल सकता हैनहीं है, क्योंकि यह मौजूद नहीं है या आपके पास अनुमति

USE [MyDatabaseName] 
GO 

GRANT EXEC ON [dbo].[StoreProcedureName] TO [UserName] 
GO 

मैं अनुमतियां दे सकते हैं theuser इंटरफ़ेस के माध्यम से उपयोगकर्ता लेकिन इस क्वेरी मैं इस त्रुटि मिलती है, का उपयोग करने के

क्योंकि यह मौजूद नहीं है या आप अनुमति नहीं है नहीं, उपयोगकर्ता उपयोगकर्ता नाम 'मिल सकता है।

यदि मेरे पास अनुमति नहीं है तो मैं उपयोगकर्ता इंटरफ़ेस का उपयोग करके अनुमतियां कैसे जोड़ सकता हूं।

+0

क्या आप वाकई उपयोगकर्ता नाम मौजूद हैं? यदि यह एक विंडोज खाता डोमेन नाम भी प्रीपेड करता है। – Ulises

+0

मैंने इसे बनाया और हाँ मेरा नाम उस नाम के साथ मौजूद है .. – Mathematics

+0

त्रुटि संदेश बहुत आत्म-व्याख्यात्मक है - क्या आप sysadmin या dbo के रूप में जुड़े हुए हैं? या तो उपयोगकर्ता नाम गलत है, या आपके पास पर्याप्त अनुमति नहीं है। –

उत्तर

32

मुझे अभी भी एक ही समस्या का सामना करना पड़ा।

सुनिश्चित करें कि मास्टर तालिका में आपके लॉगिन के लिए कोई उपयोगकर्ता मैपिंग है। कोई डेटाबेस भूमिका सदस्यता की आवश्यकता नहीं है, बस 'उपयोगकर्ता नाम' लॉगिन के लिए गुणों में 'उपयोगकर्ता मैपिंग' के अंतर्गत डेटाबेस मास्टर के लिए 'मानचित्र' पर निशान लगाएं।

0

जब आप किसी अन्य सर्वर से डेटाबेस को पुनर्स्थापित कर चुके हैं और डेटाबेस में उपयोगकर्ता का GUID वर्तमान सर्वर से अलग है, तो आप इस तरह की समस्याएं प्राप्त कर सकते हैं।

यह होगा फिर से लिंक अनाथ उपयोगकर्ताओं:

USE <database_name>; 
GO 
sp_change_users_login @Action='update_one', @UserNamePattern='<database_user>', 
    @LoginName='<login_name>'; 
GO 

इस के अलावा, उपयोगकर्ता मौजूद है और आप प्रासंगिक सुरक्षा अधिकार हैं, तो कोई कारण नहीं कि आप क्या कर काम नहीं होता है।

2

मुझे यह समस्या थी और फिर भी मैं सर्वर पर स्थानीय व्यवस्थापक समूह में हूं। जाहिर है अगर यूएसी एसक्यूएल सर्वर प्रबंधन स्टूडियो को चालू कर रहा है क्योंकि व्यवस्थापक अंतर की दुनिया बनाता है। जब तक मैंने ऐसा नहीं किया तब तक मुझे कोई अनुमति नहीं थी।

2

भागो इस:

USE [db_where_you_need_access] 
GO 
CREATE USER [your_user] FOR LOGIN [your_user] 
संबंधित मुद्दे

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