笑傲江湖

My Life and My Way...
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

跨服务器数据库数据查询

Posted on 2011-04-25 16:07  Simon.Wong  阅读(516)  评论(0编辑  收藏  举报

记得之前领导安排比测数据,但是需要连接查询查询的几个表不在同一服务器上。所以我开始是这么干的:

1.查询一台服务器的数据,并导入本地Excel,并拷贝到本机。

2.查询另一台服务器的数据,并导入本地Excel,并拷贝到本机。

3.Excle导入数据库,数据库自带了Excel导入数据库的功能。

4.连接查询,OVER!

后来才知道测试的数据,所以每个分局的数据我都要重复这样干一遍。

这时才想起跨库查询了。

1.开通分布式查询权限

exec sp_configure 'show advanced options',1
reconfigure

exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure

2.查询

select a.wt12 as '楼盘编号',b.stnameas '楼盘名称',count(1) as '房源量' from
 openrowset( 'SQLOLEDB ', 'IP地址(服务器名)'; '用户名'; '密码',[数据库名].[dbo].[表名]) a
 , openrowset( 'SQLOLEDB ', 'IP地址(服务器名)'; '用户名'; '密码',[数据库名].[dbo].[表名]) b
 where a.wt12=b.wt GROUP by   a.stid,b.stname order by  count(1) desc

3.然后换分局,只需要改IP、 库名和表名了。

4.关闭

exec sp_configure 'Ad Hoc Distributed Queries',0
reconfigure
exec sp_configure 'show advanced options',0
reconfigure