由于业务逻辑的多样性
经常得在sql server中查询不同数据库中数据
这就产生了分布式查询的需求

现我将开发中遇到的几种查询总结如下:

1.access版本

--建立连接服务器
exec sp_addlinkedserver
--要创建的链接服务器名称 
'ai',            
--产品名称              
'access',    
--ole db 字符
'microsoft.jet.oledb.4.0', 
--数据源
--格式:
-- 盘符:\路径\文件名
-- \\网络名\共享名\文件名  (网络版本)
'd:\testdb\db.mdb'
go

--创建链接服务器上远程登录之间的映射
--链接服务器默认设置为用登陆的上下文进行
--现在我们修改为连接链接服务器不需使用任何登录或密码
exec sp_addlinkedsrvlogin 'ai','false'
go

--查询数据
select * from ai...mytable
go

2.excel版本

--建立连接服务器
exec sp_addlinkedserver
--要创建的链接服务器名称 
'ai_ex',            
--产品名称              
'ex',    
--ole db 字符
'microsoft.jet.oledb.4.0', 
--数据源
--格式:
-- 盘符:\路径\文件名
-- \\网络名\共享名\文件名  (网络版本)
'd:\testdb\mybook.xls' ,
null,
--ole db 提供程序特定的连接字符串
'excel 5.0'
go

----创建链接服务器上远程登录之间的映射
--链接服务器默认设置为用登陆的上下文进行
--现在我们修改为连接链接服务器不需使用任何登录或密码
exec sp_addlinkedsrvlogin 'ai_ex','false'
go

--查询数据
select * from ai_ex...sheet3$
go

3.ms sql版本

--建立连接服务器
exec sp_addlinkedserver
--要创建的链接服务器名称 
'ai_mssql',            
--产品名称              
'ms',    
--ole db 字符
'sqloledb', 
--数据源
'218.204.111.111,3342'
go

--创建链接服务器上远程登录之间的映射
exec sp_addlinkedsrvlogin
'ai_mssql',
'false',
null,
--远程服务器的登陆用户名
'zhangzhe',
--远程服务器的登陆密码
'fish2231'
go

--查询数据
select * from ai_mssql.pubs.dbo.jobs
go

--还有一个更简单的办法
--这种方式在链接服务器建立后,它是默认开放rpc的

--建立连接服务器
exec sp_addlinkedserver
--要创建的链接服务器名称
--这里就用数据源作名称
'218.204.111.111,3342',
'sql server'
go

--创建链接服务器上远程登录之间的映射
exec sp_addlinkedsrvlogin
'218.204.111.111,3342',
'false',
null,
--远程服务器的登陆用户名
'zhangzhe',
--远程服务器的登陆密码
'fish2231'
go

--查询数据
select * from [218.204.253.131,3342].pubs.dbo.jobs
go

4.oracle版本

--建立连接服务器
exec sp_addlinkedserver
--要创建的链接服务器名称 
'o',
--产品名称              
'oracle',
--ole db 字符
'msdaora',
--数据源
'acc'
go

--创建链接服务器上远程登录之间的映射
exec sp_addlinkedsrvlogin
'o',
'false',
null,
--oracle服务器的登陆用户名
'f02m185',
--oracle服务器的登陆密码
'f02m185185'
go

--查询数据
--格式:linkserver..oracle用户名.表名
--注意用大写,因为在oracle的数据字典中为大写
select * from o..f02m185.ai
go

sql server中分布式查询随笔的更多相关文章

  1. sql server中分布式查询随笔(链接服务器(sp_addlinkedserver)和远程登录映射(sp_addlinkedsrvlogin)使用小总结)

    由于业务逻辑的多样性,经常得在sql server中查询不同数据库中数据,这就产生了分布式查询的需求 现我将开发中遇到的几种查询总结如下: 1.access版本 --建立连接服务器 EXEC sp_a ...

  2. SQL SERVER中XML查询:FOR XML指定PATH

    SQL SERVER中XML查询:FOR XML指定PATH 前言 在SQL SERVER中,XML查询能够指定RAW,AUTO,EXPLICIT,PATH.本文用一些实例介绍SQL SERVER中指 ...

  3. SQL Server中时间段查询和数据类型转换

    不知道什么时候对数据独有情种,也许是因为所学专业的缘故,也许是在多年的工作中的亲身经历,无数据,很多事情干不了,数据精度不够,也很多事情干不了,有一次跟一个朋友开玩笑说,如果在写论文的时候,能有一份独 ...

  4. SQL Server中的查询

          本博文简介一下SQL Server中经常使用的几类查询及相关使用的方法.       一.ExecuteScalar方法获取单一值       ExecuteScalar方法是SqlCom ...

  5. (4.21)sql server中复制查询结果集

    在查询结果窗口中复制列标题似乎是一项简单的任务,但对于业余爱好者来说,这可能是一场噩梦. 没有可见的指令/链接/按钮,其中一个可以使用列标题单击和复制所选数据.让我们看看如何在SQL Server M ...

  6. 在 sql server 中,查询 数据库的大小 和 数据库中各表的大小

    其实本来只想找一个方法能查询一下 数据库 的大小,没想到这个方法还能查询数据库中 各个数据表 的大小,嗯,挺好玩的,记录一下. MSDN资料:https://msdn.microsoft.com/zh ...

  7. SQL Server 中数据查询注意事项

    1.查询语句不用区分大小写,而且即使每张表的表名或者列名出现大写字母,在写查询语句的时候也不用区分大小写,查询结果保持一致,所以查询语句小写即可. 2.在写查询语句的时候列名不需要带单引号,数值型的字 ...

  8. 关于SQL Server 中连接查询Join的几种常见用法

    现有A.B .C 三个表,A中的ID=B中的ID,B中的ID=C中的ID:也就是:A.ID=B.ID,B.ID=C.ID; 一. Inner Join 把两个表链接一起查 Select * from ...

  9. SQL Server中时间段查询

    /****** Script for SelectTopNRows command from SSMS ******/ select * from dbo.VehicleData20100901 wh ...

随机推荐

  1. phonegap Overview

    PhoneGap 和 Cordova的关系阐述 是PhoneGap贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎.你可以把他想象成类似于Webk ...

  2. C#实现异步编程的两个简单机制(异步委托&定时器)及Thread实现多线程

    创建线程的常用方法:异步委托.定时器.Thread类 理解程序.进程.线程三者之间的区别:简而言之,一个程序至少有一个进程,一个进程至少有一个线程进程就是在内存中运行的程序(即运行着的程序):一个进程 ...

  3. rank() over(partition)的使用

    有的时候会遇到这样的问题,我们需要查询一张表,而且要按照业务排序,比如我需要如下的结果: 地区   日期    费用  产品编号   用户编号 290 201202 258 1             ...

  4. MySQL 常用语句 (汇集)

    原文地址:MySql常用语句作者:wuyanle 一.mysql常用语句 创建,删除和最基本查询: 显示数据库  mysql->show databases; 创建数据库  mysql-> ...

  5. MySQL订单分库分表多维度查询

    转自:http://blog.itpub.net/29254281/viewspace-2086198/ MySQL订单分库分表多维度查询  MySQL分库分表,一般只能按照一个维度进行查询. 以订单 ...

  6. java中调用dll文件的两种方法

    一中是用JNA方法,另外是用JNative方法,两种都是转载来的, JNA地址:http://blog.csdn.net/shendl/article/details/3589676   JNativ ...

  7. android studio简易了解第一部分

    1.如果还没下载 jdk,先把jdk下载,然后下载android studio 安装 百度 android studio ,百度软件中心可以下载. Android官网可以下载:     网址: htt ...

  8. 单点登录系统CAS筹建及取得更多用户信息的实现

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  9. 60款开源云应用【Part 2】(60 Open Source Apps You Can Use in the Cloud)

    60款开源云应用[Part 2](60 Open Source Apps You Can Use in the Cloud) 本篇翻译自http://www.datamation.com/open-s ...

  10. C#-设置label的字体颜色和大小

    在进行label的设置的过程中,常常会遇到需要设定label的字体颜色和字体的大小,这就需要用到label的属性: