次の方法で共有


sp_grantdbaccess (Transact-SQL)

現在のデータベースにデータベース ユーザーを追加します。

ms178013.note(ja-jp,SQL.90).gif重要 :
この機能は、将来のバージョンの Microsoft SQL Server では削除される予定です。新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。代わりに CREATE USER を使用してください。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

sp_grantdbaccess [ @loginame = ] 'login'
    [ , [ @name_in_db = ] 'name_in_db' [ OUTPUT ] ]

引数

  • [ @loginame = ] **'**login '
    新しいデータベース ユーザーにマップされる Windows グループ、Windows ログイン、または SQL Server ログインの名前を指定します。Windows グループと Windows ログインの名前には、LONDON\Joeb のように、Domain\login 形式の Windows ドメイン名を付ける必要があります。既にデータベース内のユーザーにマップされているログインは指定できません。login のデータ型は sysname で、既定値はありません。
  • [ @name_in_db=] 'name_in_db' [ OUTPUT]
    新しいデータベース ユーザーの名前です。name_in_db は OUTPUT 変数であり、データ型は sysname で、既定値は NULL です。この引数を指定しない場合、login が使用されます。値が NULL の OUTPUT 変数を指定すると、@name_in_dblogin に設定されます。現在のデータベース内に既に存在する name_in_db は指定できません。

リターン コードの値

0 (成功) または 1 (失敗)

解説

sp_grantdbaccess では CREATE USER が呼び出されます。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

参照

関連項目

セキュリティ ストアド プロシージャ (Transact-SQL)
CREATE USER (Transact-SQL)
DROP USER (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手