एक उपयोगकर्ता खाता बनाने का तरीका जानने के घंटों के बाद, जिसकी केवल 1 डीबी तक पहुंच है, और केवल उस डीबी को देख सकता है। मुझे लगता है कि मैंने इसे समझ लिया!!!!
-
एक उपयोगकर्ता खाता बनाएं ( सुनिश्चित करें कि यह किसी भी डेटाबेस से मैप नहीं किया गया है, अन्यथा आपको अंतिम त्रुटि संदेश 15110, स्तर 16, राज्य 1 और प्रस्तावित समाधान पर ध्यान दिया जाएगा )
USE [master] GO CREATE LOGIN [us4] WITH PASSWORD=N'123', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
-
SQL (SQLSERVER नाम) के ऊपरी भाग पर राइट क्लिक करें>
Properties
>Permissions
>user account
पर क्लिक करें , औरDeny
. चुनें डेटाबेस देखने के लिए।use [master] GO DENY VIEW ANY DATABASE TO [us4]
-
नव निर्मित DB, गुण, फ़ाइलें पर राइट क्लिक करें और स्वामी को नए बनाए गए खाते में बदलें।(महत्वपूर्ण नोट :
ALTER ROLE [db_owner] ADD MEMBER [us4]
काम नहीं करता )USE [dbname] GO EXEC dbo.sp_changedbowner @loginame = N'us4', @map = false
इस बिंदु पर, एक बार जब उपयोगकर्ता लॉग इन करता है तो वह मास्टर, tempdb को देखेगा और वह नया डीबी भी देखेगा जो वह एक डीबी मालिक है। आप Tools>Option
पर जाना चाह सकते हैं। और सिस्टम ऑब्जेक्ट को छिपाने के विकल्प को सक्षम किया ताकि आप मास्टर, tempdb, आदि न दिखाएं। यदि यह विकल्प काम नहीं करता है तो आपको SP1 की भी आवश्यकता हो सकती है
Msg 15110, Level 16, State 1, Line 1
The proposed new database owner is already a user or aliased in the database.
संदेश 15110 का प्रस्तावित समाधान: उपरोक्त त्रुटि को हल करने के लिए बस उपयोगकर्ता को डेटाबेस सुरक्षा नोड से हटा दें और पुनः प्रयास करें
आशा है कि इससे मदद मिलेगी...
निखिल