Sql-Server
登錄已經有一個使用不同使用者名的帳戶
當我執行這個 SQL 時:
USE ASPState GO IF NOT EXISTS(SELECT * FROM sys.sysusers WHERE NAME = 'R2Server\AAOUser') CREATE USER [R2Server\AAOUser] FOR LOGIN [R2Server\AAOUser]; GO
我收到以下錯誤:
該登錄名已經有一個使用不同使用者名的帳戶。
我如何知道我的登錄帳戶的這個不同的使用者名是什麼?
這意味著登錄
$$ R2Server\AAOUser $$已映射到該數據庫中的使用者。或者,換句話說,另一個數據庫使用者正在使用這個登錄名。您可以通過以下查詢查看正在使用您的登錄名的數據庫使用者:
use YourDB go SELECT su.name as DatabaseUser FROM sys.sysusers su join sys.syslogins sl on sl.sid = su.sid where sl.name = 'test' -- login
PS:不使用兼容性視圖的腳本版本:
Select sp.name as LoginName, sp.type_desc as LoginType, dp.name as DBUser, dp.type_desc as UserType from sys.server_principals sp join sys.database_principals dp on dp.sid = sp.sid where sp.name = 'test' -- your login