sp_grantdbaccess (Transact-SQL)
將資料庫使用者加入目前資料庫中。
重要事項 |
---|
未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 CREATE USER。 |
語法
sp_grantdbaccess [ @loginame = ] 'login'
[ , [ @name_in_db = ] 'name_in_db' [ OUTPUT ] ]
引數
[ @loginame = ] **'**login '
這是要對應至新資料庫使用者的 Windows 群組、Windows 登入或 SQL Server 登入的名稱。Windows 群組和 Windows 登入的名稱,必須以格式為 Domain\login 的 Windows 網域名稱加以限定,例如,LONDON\Joeb。登入不能先對應至資料庫中的使用者。login 是 sysname,沒有預設值。[ @name_in_db=] 'name_in_db' [ OUTPUT]
這是新資料庫使用者的名稱。name_in_db 是 OUTPUT 變數,資料類型為 sysname,預設值為 NULL。若未指定,則採用 login。如果被指定為其值是 NULL 的 OUTPUT 變數,則 @name_in_db 會設為 login。name_in_db 不能已存在於目前資料庫中。
傳回碼值
0 (成功) 或 1 (失敗)
備註
sp_grantdbaccess 會呼叫支援其他選項的 CREATE USER。如需有關建立資料庫使用者的資訊,請參閱<CREATE USER (Transact-SQL)>。若要從資料庫移除資料庫使用者,請使用 DROP USER。
sp_grantdbaccess 無法在使用者自訂交易內執行。
權限
需要 db_owner 固定資料庫角色或 db_accessadmin 固定資料庫角色中的成員資格。
範例
下列範例會使用 CREATE USER,將 Windows 登入 Edmonds\LolanSo 的資料庫使用者加入目前資料庫中。新使用者名叫 Lolan。這是建立資料庫使用者的慣用方法。
CREATE USER Lolan FOR LOGIN [Edmonds\LolanSo];
GO