次の方法で共有


sp_droplinkedsrvlogin (Transact-SQL)

適用対象: SQL サーバー

SQL Server を実行しているローカル サーバー上のログインとリンク サーバー上のログインの間の既存のマッピングを削除します。

Transact-SQL 構文表記規則

構文

sp_droplinkedsrvlogin
    [ @rmtsrvname = ] N'rmtsrvname'
    , [ @locallogin = ] N'locallogin'
[ ; ]

引数

[ @rmtsrvname = ] N'rmtsrvname'

SQL Server ログイン マッピングが適用されるリンク サーバーの名前。 @rmtsrvnamesysname で、既定値はありません。

[ @locallogin = ] N'locallogin'

リンク サーバー @rmtsrvnameへのマッピングであるローカル サーバー上の SQL Server ログイン。 @localloginsysname で、既定値はありません。 @rmtsrvnameへの@localloginのマッピングが既に存在している必要があります。 NULL場合、ローカル サーバー上のすべてのログインをリンク サーバー上のログインにマップする、sp_addlinkedserverによって作成された既定のマッピングが削除されます。

リターン コードの値

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

解説

ログインの既存のマッピングが削除されると、ローカル サーバーは、そのログインの代わりにリンク サーバーに接続するときに、 sp_addlinkedserver によって作成された既定のマッピングを使用します。 既定のマッピングを変更するには、 sp_addlinkedsrvloginを使用します。

既定のマッピングも削除された場合、リンク サーバーへのログイン マッピングが明示的に指定されたログインのみが、 sp_addlinkedsrvloginを使用してリンク サーバーにアクセスできます。

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

アクセス許可

サーバーに対する ALTER ANY LOGIN 権限が必要です。

A. 既存のユーザーのログイン マッピングを削除する

次の例では、ログイン Mary に関するローカル サーバーとリンク サーバー Accounts のマッピングを削除します。 その結果、ログイン Mary は既定のログイン マッピングを使用します。

EXEC sp_droplinkedsrvlogin 'Accounts', 'Mary';

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

次の例では、リンク サーバー Accountssp_addlinkedserverを実行することによって最初に作成された既定のログイン マッピングを削除します。

EXEC sp_droplinkedsrvlogin 'Accounts', NULL;