【数据库SQL】在本地电脑里的查询分析器里,读取其他电脑的数据库数据。跨店SQL里查询

原创 2017年01月03日 13:03:23
在SQL Server20008调用别的SQL数据库远程操作中,
在使用openrowset/opendatasource前首先要启用Ad Hoc Distributed Queries服务,因为这个服务不安全所以SqlServer默认是关闭的。


--不用选择数据库
1、启用Ad Hoc Distributed Queries的方法


SQL Server 阻止了对组件'Ad Hoc Distributed Queries' 的STATEMENT'OpenRowset/OpenDatasource'的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用。sp_configure 启用 'Ad Hoc Distributed Queries'。


启用Ad Hoc Distributed Queries的方法,执行下面的查询语句就可以了:


exec sp_configure 'show advanced options',1  
 
reconfigure  
 
exec sp_configure 'Ad Hoc Distributed Queries',1  
 
reconfigure 
使用完毕后,记得一定要关闭它,因为这是一个安全隐患,切记执行下面的SQL语句:


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


============================================================================================================================================================
作用:将138服务器上的数据库移到本地
方法①:
在本地的SQL里执行如下。即可
注意:如下语句执行不了。是因为。SQL外围功能没开启远程连接。在SQL功能外围了设置即可。   
---建议版本,以下无法使用
--如果只是临时访问,可以直接用openrowset  
 --查询示例  
select   *     from   openrowset('SQLOLEDB','服务器地址';'sa';'SA密码',数据库名.dbo.表名)  


例如:
select   *  into hbfsv8..类别   from   openrowset('SQLOLEDB','POS-SERVER2';'sa';'',hbfsv8.dbo.类别)  


执行成功后。即可在本地写语句导数据


方法②:




您好:以下方法,有个别的SQL版本无法使用例如简易版本,可使用如下方法查询(需要SQL能正常访问的情况下使用,可以使用SQL查询分析器连接测试)
--第一步:开启创建链接服务器  (执行一次即可)
exec   sp_addlinkedserver     'srv_lnk','','SQLOLEDB','POS-SERVER2'  
exec   sp_addlinkedsrvlogin   'srv_lnk','false',null,'sa',''  
go  


--如下可以写语句来查询    
--查询分店的库存数据  
select   *   from   srv_lnk.isszmv7_branch.dbo.t_im_branch_stock    where item_no='00001' --3
   
 
--将分店的库存数据导入到本地的服务器来  
select   *   into  isszmv7..fdkc   from   srv_lnk.isszmv7_branch.dbo.t_im_branch_stock    --2869
    


--将分店的库存和总部的库存对比
select a.item_no as 货号,a.stock_qty as 库存数量  from isszmv7..t_im_branch_stock a,  fdkc  b
where a.item_no=b.item_no and  a.stock_qty<>b.stock_qty 
go




--注意:以后不再使用时删除链接服务器  
exec   sp_dropserver   'srv_lnk','droplogins'  
 go  








   
---建议版本,以下无法使用
  --如果只是临时访问,可以直接用openrowset  
  --查询示例  
  select   *   from   openrowset('SQLOLEDB'  
  ,'POS-SERVER2';'用户名';'密码'  
  ,数据库名.dbo.表名)  
    
例如:
select   *  into hbfsv8..sps2  from   openrowset('SQLOLEDB','128.0.14.06\XYT';'sa';'',hbfsv8.dbo.sps2)  
select   *  into hbfsv8..spd1  from   openrowset('SQLOLEDB','128.0.14.06\XYT';'sa';'',hbfsv8.dbo.spd1)  
select   *  into hbfsv8..类别   from   openrowset('SQLOLEDB','128.0.14.06\XYT';'sa';'',hbfsv8.dbo.类别)  
版权声明:本文仅供参考,如有疑问可联系【女程序员QQ630849360】

相关文章推荐

《微型电脑应用》2011年第11期刊登出《万能数据库查询分析器中的事务管理在Oracle中的应用》

今天收到科技核心期刊《微型电脑应用》编辑部寄来的2011年第11期样刊,在2011年第11期,刊登出了本人的论文------“《万能数据库查询》分析器中的事务管理在Oracle中的应用”。     ...

祝贺自己的软件《万能数据库查询分析器》在非凡软件站和太平洋电脑的下载排行榜分别名列第1和第2

祝贺自己的软件《万能数据库查询分析器》在非凡软件站和太平洋电脑的下载排行榜分别名列第1和第2  今天有一个非常值得庆祝的事情---《万能数据库查询分析器》中文版本《DB 查询分析器》在非凡软件站和太平...

SQL数据库查询分析器

  • 2012年05月02日 14:04
  • 1.34MB
  • 下载

《电脑编程技巧与维护》2011年第24期刊登出《DB 查询分析器》批量执行DML语句并返回更详细的信息

国家级科技期刊《电脑编程技巧与维护》编辑部寄来的2011年第24期(即12月下)样刊,在2011年第24期(即12月 下),刊登出了本人的论文------“《DB 查询分析器》批量执行DML语句并返回...

《DB 查询分析器》批量执行多条SQL语句并查看各自的执行时间

《DB 查询分析器》批量执行多条SQL语句并查看各自的执行时间       一、       功能强大、统一界面的《DB 查询分析器》              从关系数据库产生至今,有许...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【数据库SQL】在本地电脑里的查询分析器里,读取其他电脑的数据库数据。跨店SQL里查询
举报原因:
原因补充:

(最多只允许输入30个字)