sp_dropremotelogin (Transact-SQL)

適用対象:SQL Server

SQL Server を実行しているローカル サーバーに対してリモート ストアド プロシージャを実行するために使用するローカル ログインにマップされたリモート ログインを削除します。

重要

この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 代わりに、リンク サーバーとリンク サーバー ストアド プロシージャを使用してください。

Transact-SQL 構文表記規則

構文

sp_dropremotelogin
    [ @remotename = ] N'@remotename'
    [ , [ @loginame = ] N'loginame' ]
    [ , [ @remotename = ] N'remotename' ]
[ ; ]

引数

[ @remotename = ] N'@remotename'

削除するリモート ログインにマップされているリモート サーバーの名前。 @remotenameは sysname で、既定値はありません。 @remotenameは既に存在している必要があります。

[ @loginame = ] N'loginame'

リモート サーバーに関連付けられているローカル サーバー上の省略可能なログイン名。 @loginameは sysname で、既定値は NULL. @loginameが既に存在している必要があります (指定されている場合)。

[ @remotename = ] N'remotename'

リモート サーバーからログインするときに@loginameマップされるリモート ログインの省略可能な名前。 @remotenameは sysname で、既定値は NULL.

リターン コードの値

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

解説

@remotenameのみを指定すると、そのリモート サーバーのすべてのリモート ログインがローカル サーバーから削除されます。 @loginameも指定すると、その特定のローカル ログインにマップ@remotenameからのすべてのリモート ログインがローカル サーバーから削除されます。 remote_nameも指定されている場合、@remotenameからのそのリモート ユーザーのリモート ログインのみがローカル サーバーから削除されます。

ローカル サーバー ユーザーを追加するには、次を使用 sp_addloginします。 ローカル サーバー ユーザーを削除するには、次を使用 sp_droploginします。

リモート ログインは、以前のバージョンの SQL Server を使用する場合にのみ必要です。 SQL Server 7.0 以降のバージョンでは、代わりにリンク サーバー ログインが使用されます。 sp_droplinkedsrvloginリンク サーバー ログインの追加と削除を行う場合に使用sp_addlinkedsrvloginします。

sp_dropremotelogin は、ユーザー定義トランザクション内では実行できません。

アクセス許可

sysadmin または securityadmin 固定サーバー ロールのメンバーシップが必要です。

A. リモート サーバーのすべてのリモート ログインを削除する

次の例では、リモート サーバーのエントリを削除するため、ローカル サーバー ACCOUNTS上のログインとリモート サーバー上のリモート ログインの間のすべてのマッピングを削除します。

EXEC sp_dropremotelogin 'ACCOUNTS';

B. ログイン マッピングを削除する

次の例では、リモート サーバー ACCOUNTS からのリモート ログインとローカル ログイン Albert をマップしているエントリを削除します。

EXEC sp_dropremotelogin 'ACCOUNTS', 'Albert';

C: リモート ユーザーを削除する

次の例では、ローカル ログインにマップされたリモート サーバーACCOUNTS上のリモート ログインChrisのログインsalesmgrを削除します。

EXEC sp_dropremotelogin 'ACCOUNTS', 'salesmgr', 'Chris';