為 Microsoft® SQL Server™ 登錄或 Microsoft Windows NT® 用戶或組在當前數據庫中添加一個安全帳戶,并使其能夠被授予在數據庫中執(zhí)行活動的權限。
sp_grantdbaccess [@loginame =] 'login'
[,[@name_in_db =] 'name_in_db' [OUTPUT]]
[@loginame =] 'login'
當前數據庫中新安全帳戶的登錄名稱。Windows NT 組和用戶必須用 Windows NT 域名限定,格式為"域\用戶",例如 LONDON\Joeb。登錄不能使用數據庫中已有的帳戶作為別名。login 的數據類型為 sysname,沒有默認值。
[@name_in_db =] 'name_in_db' [OUTPUT]
數據庫中帳戶的名稱。name_in_db 是 sysname 類型的 OUTPUT 變量,默認值為 NULL。如果沒有指定,則使用 login。如果將其指定為 NULL 值的 OUTPUT 變量,則設置 @name_in_db 為 login。當前數據庫不必存在 name_in_db。
0(成功)或 1(失?。?/P>
SQL Server 用戶名可以包含 1 到 128 個字符,包括字母、符號和數字。但是,用戶名不能:
在使用安全帳戶訪問數據庫之前,必須授予它對當前數據庫的訪問權。使用 sp_grantdbaccess 僅可以管理當前數據庫中的帳戶。若要從數據庫中刪除帳戶,請使用 sp_revokedbaccess。
如果當前數據庫中沒有 guest 安全帳戶,而且 login 為 guest,則可以添加 guest 的安全帳戶。
sa 登錄不能添加到數據庫中。
不能從用戶定義的事務中執(zhí)行 sp_grantdbaccess。
只有 sysadmin 固定服務器角色、db_accessadmin 和 db_owner 固定數據庫角色的成員才能執(zhí)行 sp_grantdbaccess。
下面的示例在當前數據庫中為 Windows NT 用戶 Corporate\GeorgeW 添加帳戶,并取名為 Georgie。
EXEC sp_grantdbaccess 'Corporate\GeorgeW', 'Georgie'
相關文章