孤立帳戶,就是某個數據庫的帳戶只有用戶名而沒有登錄名,這樣的用戶在用戶庫的sysusers系統表中存在,而在master數據庫的syslogins中卻沒有對應的記錄。
孤立帳戶的產生一般是一下兩種:
1 .將備份的數據庫在其它機器上還原;
2 .重裝系統或SQL SERVER之後只還原了用戶庫
解決方法是使用sp_change_users_login來修復。
sp_change_users_login的用法有三種
用法 1 :列出當前數據庫的孤立用戶
exec sp_change_users_login 'REPORT'
用法 2 :可以自動將用戶名所對應的同名登錄添加到syslogins中
exec sp_change_users_login 'AUTO_FIX','用戶名'
用法 3 :將用戶名映射爲指定的登錄名。
exec sp_change_users_login 'UPDATE_ONE','用戶名','登錄名'