Transact-SQL 参考

sp_dropremotelogin

删除映射到本地登录、对运行 Microsoft® SQL Server™ 的本地服务器执行远程存储过程的远程登录。

语法

sp_dropremotelogin [ @remoteserver = ] 'remoteserver'
    [ , [ @loginame = ] 'login' ]
    [ , [ @remotename = ] 'remote_name' ]

参数

[@remoteserver =] 'remoteserver'

远程服务器的名称,该远程服务器映射到将被删除的远程登录。remoteserver 的数据类型为 sysname,没有默认值。remoteserver 必须已经存在。

[@loginame =] 'login'

与远程服务器相关联的本地服务器上的可选登录名。login 的数据类型为 sysname,带有默认值 NULL。如果指定了 login,那么它必须已经存在。

[@remotename =] 'remote_name'

可选的远程登录的名称,当从远程服务器登录时,这个名称映射到 loginremote_name 的数据类型为 sysname,带有默认值 NULL。

返回代码值

0(成功)或 1(失败)

注释

如果只指定了 remoteserver,那么从本地服务器中删除所有针对该远程服务器的远程登录。另外,如果指定了 login,那么从本地服务器中删除所有从 remoteserver 映射到该特定的本地登录的远程登录。如果还指定了 remote_name,那么只从本地服务器中删除来自 remoteserver 的那个远程用户的远程登录。

若要添加本地服务器用户,请使用 sp_addlogin。若要删除本地服务器用户,请使用 sp_droplogin

只有在使用早期版本的 SQL Server 时,才需要远程登录。而 SQL Server 7.0 版使用链接服务器登录。使用 sp_addlinkedsrvloginsp_droplinkedsrvlogin 添加及删除链接服务器登录。

不能在用户定义的事务内执行 sp_dropremotelogin

权限

只有 sysadminsecurityadmin 固定服务器角色的成员才可以执行 sp_dropremotelogin

示例
A. 除去远程服务器的所有远程登录

下面的示例删除远程服务器 ACCOUNTS 的条目,因此对于本地服务器上的登录和远程服务器上的远程登录,将删除二者之间所有的映射。

EXEC sp_dropremotelogin 'ACCOUNTS'
B. 删除登录映射

下面的示例删除一个映射的条目,该条目将来自远程服务器 ACCOUNTS 的远程登录映射到本地登录 Albert

EXEC sp_dropremotelogin 'ACCOUNTS', 'Albert'
C. 删除远程用户

下面的示例删除远程服务器 ACCOUNTS 上的远程登录 Chris 的登录,这个远程登录映射到本地登录 salesmgr

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

请参见

sp_addlinkedsrvlogin

sp_addlogin

sp_addremotelogin

sp_addserver

sp_droplinkedsrvlogin

sp_droplogin

sp_helpremotelogin

系统存储过程