問題:
在利用企業管理器使用向導新建一個登錄,並且在“數據庫訪問”選項下面賦予這個登錄訪問某個數據庫的權限,遇到如下錯誤信息:
錯誤 21002:[SQL-DMO]用戶"user"已經存在。
分析和解答:
這個錯誤一般會發生在將數據庫從一台服務器遷移到另一台服務器之後,如果在新的服務器裡面找不到某一個用戶對應的登錄,就會發生“孤立用戶”的問題。此時,盡管在新的服務器裡面沒有這個登錄,而在該數據庫的sysusers表中,卻存在該登錄對應的用戶信息,因此SQL Server會給出以上的錯誤信息。
解決步驟如下:
(1)新建一個同名的登錄,但是不要賦予它任何數據庫的訪問權限。
(2)使用以下命令使該登錄與該用戶對應在一起:
exec sp_change_users_login 'Update_One','用戶','新建登錄名'
出處:http://hi.baidu.com/jianan8610/blog/item/c8de05fb2c211e106c22ebf1.Html