代码改变世界

Sql Server跨服务器查询

2019-05-24 15:02  石吴玉  阅读(2952)  评论(0编辑  收藏  举报

一. 执行存储过程 sp_addlinkedserver 将服务器添加到 sys.servers

-- Servername:远程服务器别名, 
exec sp_addlinkedserver 'ServiceName','productName','SQLNCLI','远程服务器名或IP地址'
exec sp_addlinkedsrvlogin 'ServiceName','false',null,'用户名','密码'

参数参照图如下:

 

二. 跨服务器查询时,需要按照下列格式指定查询表

  • 添加的远程服务器别名

  • 数据库名

  • 数据库的schema,一般是dbo

  • 表名称

  • 查询示例

select * from ServiceName.superrank.dbo.RankAccount1

三.  查询服务器中已有的linkserver信息

select * from SYS.linked_logins;
select * from SYS.Servers;

四.  删除已经存在的链接服务器

if exists(select * from SYS.Servers where name=N'ServiceName')
exec master.sys.sp_dropserver 'ServiceName','droplogins'