需求:两个一模一样的表,分别分布在两个服务器的数据库上,现在要在一个表中,查看这两个表的内容,并让Id排序
1:在本地数据库查询分析器中,运行以下两段语句:
--创建链接服务器
exec sp_addlinkedserver
@server= 'otherdb', --给要链接的服务器取的别名,也可以用下面的IP地址
@srvproduct= '', --空
@provider='SQLOLEDB', --不需要修改
@datasrc = '192.168.1.1' --需要连接的服务器IP,如果链接服务器数据库有添加端口号的话,就要改成'192.168.1.1,端口号'
--登录链接服务器
exec sp_addlinkedsrvlogin
'otherdb', --上面取的服务器别名
'false',
NULL,
'用户名', --帐号 --可以是服务器上某个数据库的用户,不一定要sa
'密码' --密码
2:联合查询
select id,a,b from table1 union(select id,a,b from [otherdb].[name].dbo.table1 as table2) order by id