sp_grantdbaccess (Transact-SQL)
適用対象: SQL Server
現在のデータベースにデータベース ユーザーを追加します。
重要
この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 代わりに CREATE USER を使用してください。
構文
sp_grantdbaccess
[ @loginame = ] N'loginame'
[ , [ @name_in_db = ] N'name_in_db' OUTPUT ]
[ ; ]
引数
[ @loginame = ] N'loginame'
新しいデータベース ユーザーにマップする Windows グループ、Windows ログイン、または SQL Server ログインの名前。 @loginame は sysname で、既定値はありません。 Windows グループと Windows ログインの名前は、 <domain>\<login>
形式の Windows ドメイン名 (たとえば、 LONDON\Joeb
) で修飾する必要があります。 ログインをデータベース内のユーザーにマップすることはできません。
[ @name_in_db = ] N'name_in_db' OUTPUT
新しいデータベース ユーザーの名前。 @name_in_db は、 sysname 型の OUTPUT パラメーターです。 指定しない場合は、 @loginame が使用されます。 値が NULL
の OUTPUT 変数として指定した場合、 @name_in_db は @loginame に設定されます。 @name_in_db は、現在のデータベースにまだ存在してはなりません。
リターン コードの値
0
(成功) または 1
(失敗)。
解説
sp_grantdbaccess
は、追加のオプションをサポートする CREATE USER
を呼び出します。 データベース ユーザーの作成の詳細については、 CREATE USER を参照してください。 データベースからデータベース ユーザーを削除するには、 DROP USERを使用します。
sp_grantdbaccess
は、ユーザー定義トランザクション内では実行できません。
アクセス許可
db_owner固定データベース ロールまたはdb_accessadmin固定データベース ロールのメンバーシップが必要です。
例
次の例では、 CREATE USER
を使用して、現在のデータベースに Edmonds\LolanSo
Windows アカウントのデータベース ユーザーを追加します。これは、データベース ユーザーを作成するための推奨される方法です。 新しいユーザーの名前は Lolan
です。
CREATE USER Lolan FOR LOGIN [Edmonds\LolanSo];
GO