浅析如何实现SQL Server高效率跨服务器查询


  本文标签:SQL Server

  51CTO数据库频道向您推荐《SQL Server入门到精通》和《数据库之索引与查询专题》,希望能对您有所帮助  。

  今日产品部要导批数据,但是需要连接查询查询的几个表不在同一服务器上  。所以我开始是这么干的:

  1.查询一台服务器的数据,并导入本地Excel

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

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

  导入数据库

  4.连接查询,OVER!

  后来才知道产品部要全国50多个城市的数据,所以每个城市的我都要重复这样干一遍  。

  这时才想起跨库查询了  。

  1.开通分布式查询权限

  1. exec sp_configure show advanced options,1   
  2. reconfigure  
  3. exec sp_configure Ad Hoc Distributed Queries,1   
  4. reconfigure 

  2.查询

  1. select a.ProjCode as 楼盘编号,b.projname as 楼盘名称,count(1) as 房源量 from   
  2.  openrowset( SQLOLEDB IP地址(服务器名)用户名密码,[数据库名].[dbo].[表名]) a  
  3.  , openrowset( SQLOLEDB IP地址(服务器名)用户名密码,[数据库名].[dbo].[表名]) b  
  4.  where a.ProjCode=b.newcode GROUP by   a.ProjCode ,b.projname order by  count(1) desc 

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

  4.关闭

  1. exec sp_configure Ad Hoc Distributed Queries,0   
  2. reconfigure   
  3. exec sp_configure show advanced options,0   
  4. reconfigure 
 

原文标题:SQL跨服查询

链接:http://www.cnblogs.com/zhanglei644213943/archive/2010/05/05/1727670.html

【编辑推荐】

  1. SQL Server使用索引实现数据访问优化
  2. SQL Server数据库优化经验总结
  3. 如何使用SQLServer数据库查询累计值
  4. 浅析Oracle和SqlServer存储过程的调试、出错处理
  5. 几段SQLServer语句和存储过程
  6. 50种方法优化SQL Server数据库查询
  7. 【责任编辑:彭凡 TEL:(010)68476606】