共用方式為


sp_helpuser (Transact-SQL)

報告目前資料庫中資料庫層級主體的相關資訊。

重要事項重要事項

sp_helpuser 不會傳回導入 SQL Server 2005 中之安全性實體的相關資訊。請改用 sys.database_principals

適用於:SQL Server (SQL Server 2008 至目前版本)。

主題連結圖示 Transact-SQL 語法慣例

語法

sp_helpuser [ [ @name_in_db = ] 'security_account' ]

引數

  • [ @name_in_db = ] 'security_account'
    這是目前資料庫中之資料庫使用者或資料庫角色的名稱。 security_account 必須存在目前的資料庫中。 security_account 是 sysname,預設值是 NULL。 如果未指定 security_account,則 sp_helpuser 會傳回所有資料庫主體的相關資訊。

傳回碼值

0 (成功) 或 1 (失敗)

結果集

下表顯示未針對 security_account 指定使用者帳戶或 SQL Server 或 Windows 使用者時的結果集。

資料行名稱

資料類型

說明

UserName

sysname

目前資料庫中的使用者。

RoleName

sysname

UserName 所屬角色。

LoginName

sysname

UserName 的登入。

DefDBName

sysname

UserName 的預設資料庫。

DefSchemaName

sysname

資料庫使用者的預設結構描述。

UserID

smallint

目前資料庫中的 UserName 識別碼。

SID

smallint

使用者安全性識別碼 (SID)。

下表顯示未指定使用者帳戶且別名存在於目前資料庫中時的結果集。

資料行名稱

資料類型

說明

LoginName

sysname

作為目前資料庫中之使用者的別名之登入。

UserNameAliasedTo

sysname

目前資料庫中以該登入為別名的使用者名稱。

下表顯示針對 security_account 指定角色時的結果集。

資料行名稱

資料類型

說明

Role_name

sysname

目前資料庫中角色的名稱。

Role_id

smallint

目前資料庫中角色的角色識別碼。

Users_in_role

sysname

目前資料庫中角色的成員。

Userid

smallint

角色成員的使用者識別碼。

備註

若要參閱有關資料庫角色成員資格的相關資訊,請使用 sys.database_role_members。 若要參閱有關伺服器角色成員的相關資訊,請使用 sys.server_role_members;若要參閱有關伺服器層級主體的相關資訊,請使用 sys.server_principals

權限

需要 public 角色中的成員資格。

傳回的資訊受限於中繼資料存取限制。 主體對其沒有權限的實體不會出現。 如需詳細資訊,請參閱<中繼資料可見性組態>。

範例

A.列出所有使用者

下列範例會列出目前資料庫中的所有使用者。

EXEC sp_helpuser;

B.列出單一使用者的資訊

下列範例會列出使用者資料庫擁有者 (dbo) 的相關資訊。

EXEC sp_helpuser 'dbo';

C.列出資料庫角色的資訊

下列範例會列出 db_securityadmin 固定資料庫角色的相關資訊。

EXEC sp_helpuser 'db_securityadmin';

請參閱

參考

安全性預存程序 (Transact-SQL)

系統預存程序 (Transact-SQL)

sys.database_principals (Transact-SQL)

sys.database_role_members (Transact-SQL)

sys.server_principals (Transact-SQL)

sys.server_role_members (Transact-SQL)

概念

主體 (Database Engine)