MS SQL Server 錯誤 21002 :[SQL -DMO]用戶"xxx"已經存在 解決方法
MSSQL2000遷移數據庫後,新建相同用戶名的時候出現錯誤提示:“錯誤21002 :[SQL -DMO]用戶"xxx"已經存在”
產生原因:
這就是我們通常所說的“孤立用戶 ”,所謂孤立帳戶,就是某個數據庫的帳戶只有用戶名而沒有登錄名,這樣的用戶在用戶庫的sysusers系統表中存在,而在master數據庫的syslogins中卻沒有對應的記錄。
孤立帳戶的產生壹般是壹下兩種:
1.將備份的數據庫在其它機器上還原;
2.重裝系統或SQL SERVER 之後只還原了用戶庫
解決方法:
解決方法是使用sp_change_users_login來修復。
sp_change_users_login的用法有三種
修復方法:
步驟1:
exec sp_change_users_login 'REPORT'
列出當前數據庫的孤立用戶
步驟 2:
exec sp_change_users_login 'AUTO_FIX','用戶名'
可以自動將用戶名所對應的同名登錄添加到syslogins中
步驟 3:
exec sp_change_users_login 'UPDATE_ONE','用戶名','登錄名'
將用戶名映射為指定的登錄名。
本文來自CSDN博客,轉載請標明出處:/Bluesky_Leon/archive/2010/01/14/5189115.aspx