sp_addalias (Transact-SQL)

データベース内のユーザーにログインをマップします。

ms184394.note(ja-jp,SQL.90).gif重要 :
sp_addalias では、以前のバージョンの SQL Server との互換性が提供されます。この機能は、Microsoft SQL Server の次のバージョンで削除されます。新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 SQL Server 2005 データベース エンジン では、別名を使用する代わりに、ロールおよびロールへ権限を与える機能が使用されます。詳細については、「CREATE USER (Transact-SQL)」および「CREATE ROLE (Transact-SQL)」を参照してください。

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

構文

sp_addalias [ @loginame = ] 'login' , [ @name_in_db = ] 'alias_user'

引数

  • [ @loginame = ] 'login'
    別名を割り当てるログインの名前を指定します。login のデータ型は sysname で、既定値はありません。login は、SQL Server インスタンスに接続するための権限を持つ有効な SQL Server ログインまたは Microsoft Windows ユーザーであることが必要です。既に存在するログインやユーザー、またはデータベース内に既に存在するユーザーの別名として割り当てられているログインやユーザーは指定できません。
  • [ @name_in_db = ] 'alias_user'
    ログインをマップするユーザーの名前を指定します。alias_user のデータ型は sysname で、既定値はありません。alias_user は、ログインの別名が指定されているデータベース内のユーザーであることが必要です。Windows ユーザーにマップする場合は、データベースで認識されている名前を指定します。

解説

ログインは、任意のデータベース内のユーザーにマップすることができます。sp_addalias は、ユーザーに別名が必要とされるデータベース内でのみ実行します。login パラメータを使ってデータベース エンジン インスタンスに接続した場合、ユーザーは alias_user に適用されている権限に基づいてデータベース内の処理を実行できます。

ms184394.note(ja-jp,SQL.90).gifメモ :
sa ログインに対して別名は作成できません。

ログインは、次の場合にデータベースにアクセスできます。

  • データベース内に関連付けられたユーザー アカウントがある場合。
  • データベース内に、データベース所有者または sysadmin 固定サーバー ロールのメンバが sp_addalias を使用して追加した別名がある場合。
  • データベース内で guest アカウントが有効になっている場合。

sp_addalias ストアド プロシージャを、ユーザー定義のトランザクションから実行することはできません。

次の表は、sp_addalias と組み合わせて使用できるシステム ストアド プロシージャです。

ストアド プロシージャ 説明

sp_helplogins

有効な login 値の一覧を返します。

sp_helpuser

ログインが使用されるデータベース内の、有効な alias_user 値の一覧を返します。

sp_dropalias

別名のマッピングを削除します。

権限

db_owner 固定データベース ロールのメンバシップが必要です。

戻り値

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

次の例では、SQL Server ログインの Victoria を、AdventureWorks データベース内の既存のユーザー Albert にマップする方法を示します。

USE AdventureWorks;
EXEC sp_addalias 'Victoria', 'Albert' ;

参照

関連項目

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

その他の技術情報

db_owner

ヘルプおよび情報

SQL Server 2005 の参考資料の入手