by MN-SOFT.COM
12. 八月 2011 08:51
1、确保当前登录帐户是该数据库的管理员
2、通过系统存储过程 sys.sp_addlinkedserver 给 sys.servers 表中插入一条远程链接服务器信息
3、通过 sys.sp_addlinkedsrvlogin 设置登录信息。
4、使用注册在 sys.servers 表中的 name 字段作为实例名,便可访问远程数据库。
语法:
SELECT * FROM InstanceName.DataBase.Schema.TableName
在使用结束后,可通过 sys.sp_dropserver 删除刚注册的链接服务器信息。
Demo:
IF NOT EXISTS(SELECT TOP 1 1 FROM sys.servers WHERE name = 'Tag')
BEGIN
--创建链接服务器
EXEC sys.sp_addlinkedserver
@server='Tag', --自定义一个别名
@datasrc = '127.0.0.1', --服务器地址
@provider = N'SQLNCLI', --服务器类型,如:SQL Server=SQLNCLI,Oracle=MSDAORA
@srvproduct=N'' --SQL Server不必指定
--登录链接服务器
EXEC sys.sp_addlinkedsrvlogin
@rmtsrvname = 'Tag', -- sp_addlinkedsrvlogin 中指定的 @server 参数值
@useself = 'false', --TRUE:使用当前凭据登录;FALSE:使用参数登录
@rmtuser = 'userID', --登录名
@rmtpassword = 'password'--密码
END
IF EXISTS(SELECT TOP 1 1 FROM sys.servers WITH(NOLOCK) WHERE name = 'Tag')
BEGIN
--删除链接服务器
EXEC sys.sp_dropserver
@server = 'Tag', --要删除的服务器
@droplogins = 'droplogins' --删除所有关联的远程登录名,不指定时不删除登录名
END
--查看已有的链接服务器
SELECT * FROM sys.servers
--或
EXEC sys.sp_helpserver
本文基于署名-非商业性使用-相同方式共享 3.0 Unported许可协议发布,欢迎转载或创作演绎作品,但是必须保留本文的署名迷你软件(包含链接),具体操作方式可参考此处。如您有任何疑问或者授权方面的协商,请给我留言。