2011-04-11 17 views
12

मेरे पास एक .net है जहां मैंने केवल SQL सर्वर डेटाबेस तक पहुंच पढ़ी है। क्या SQL सर्वर के लिए मुझे डेटाबेस में केवल एक तालिका में पहुंच लिखने के लिए संभव है, और मुझे केवल बाकी डेटाबेस के लिए पढ़ने के लिए प्रतिबंधित करें?एसक्यूएल सर्वर - प्रति तालिका आधार पर अनुमति?

उत्तर

15

उपयोग इस TSQL स्क्रिप्ट, अगर आप की जरूरत है:

EXEC sp_addrolemember N'db_datareader', N'User1'; 

GRANT INSERT, UPDATE, SELECT ON 
    MyTable 
TO User1 --for multiples, it's TO User1,User2 
4

हाँ, हाँ यह है।

बस खुद को केवल पढ़ने की भूमिका दें और प्रश्न में तालिका में स्पष्ट लेखन अनुमति दें।

4

एसक्यूएल सर्वर प्रबंधन स्टूडियो में, डेटाबेस नाम में केवल पढ़ने के लिए उपयोगकर्ता को राइट-क्लिक | सुरक्षा | उपयोगकर्ता और गुण चुनें।

"सुरक्षित" चुनें और "खोजें ..." पर क्लिक करें। पॉपअप में "प्रकार की सभी ऑब्जेक्ट्स ..." चुनें और ठीक क्लिक करें। अगली विंडो में "टेबल्स" का चयन करें और ठीक क्लिक करें।

फिर वापस सेक्यूरबेल विंडो में, प्रत्येक तालिका के लिए जो उपयोगकर्ता लिख ​​सकता है: तालिका पर क्लिक करें, और "अनुदान" कॉलम में नीचे अनुमति विंडो में, "सम्मिलित करें", "चयन करें" चुनें और "अद्यतन करें"।

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