由于业务逻辑的多样性,经常得在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中分布式查询随笔(链接服务器(sp_addlinkedserver)和远程登录映射(sp_addlinkedsrvlogin)使用小总结)的更多相关文章

  1. sql server中分布式查询随笔

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

  2. 在64位SQL Server中创建Oracle的链接服务器

    当我们同时使用SQL Server和Oracle来存储数据时,经常会用到跨库查询.为了方便使用跨库查询,一个最好的办法就是通过创建链接服务器来实现.既可以在SQL Server中创建Oracle的链接 ...

  3. 在64位SQL Server中创建Oracle的链接服务器 Link Server

    有时候我们希望在一个sqlserver下访问另一个sqlserver数据库上的数据,或者访问其他oracle数据库上的数据,要想完成这些操作,我们首要的是创建数据库链接. 数据库链接能够让本地的一个s ...

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

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

  5. SQL Server 不同数据间建立链接服务器进行连接查询

        在平时查询以及导数据时,经常会遇到需要使用两个数据库里数据的情况,这时就会用到在两个服务器之间建立一个链接,进行操作,脚本语句如下: 举例:例如你在测试服务器上想要查询业务库里的数据信息,此脚 ...

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

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

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

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

  8. SQL Server中的查询

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

  9. SQL Server Form子查询、链接查询

    所用数据表:用户,钱包,订单 一.from子查询 --查询钱包里金额大于30000 and User_ID = Users.ID) ) 二.链接查询 内连接(inner join)外连接(left/r ...

随机推荐

  1. Python之旅:列表

    Python列表脚本操作符 列表对 + 和 * 的操作符与字符串相似.+ 号用于组合列表,* 号用于重复列表. 如下所示: Python 表达式 结果 描述 len([1, 2, 3]) 3 长度 [ ...

  2. python入门:1-100所有数的和

    #!/usr/bin/env python # -*- coding:utf-8 -*- #1-100所有数的和 """ 给x赋值为1,y赋值为0,while循环真,循环 ...

  3. MySQL基本了解与使用

    MySQL的相关概念介绍 MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格 ...

  4. ElasticStack系列之八 & _source 字段

    有很多人会有这样的一个疑问: _source字段存储的是索引的原始内容,那 store 属性的设置是为何呢?elasticsearch 为什么要把 store 的默认取值设置为 no?设置为 yes ...

  5. windows下64位python的安装及机器学习相关包的安装(实用)

    开通博客已久,想了好久决定写个基础的安装教程,望后人少走弯路,也借此希望跟大家多多交流.文中给出的链接默认是基于对python2.7的前提下的包. 1.首先下载64位Python包,进行安装(默认py ...

  6. CF916E Jamie and Tree

    CF916E Jamie and Tree 题意翻译 有一棵n个节点的有根树,标号为1-n,你需要维护以下三种操作 1.给定一个点v,将整颗树的根变为v 2.给定两个点u, v,将lca(u, v)所 ...

  7. jdk与jdt

    jdk是java的开发环境 ,程序的编译.运行都需要jdk.一个java开发平台,jdk少不了,而编辑器 可以多种多样,除了 eclipse中的JDT,还有独立的jcreate ,或者用记事本以其他加 ...

  8. 微信图片上传,遇到一个神奇的jgp

    微信图片上传,获取图片base64遇到一个神奇的   jgp var imgFn = function (event) { event.preventDefault(); var id = '#'+$ ...

  9. vue 倒计时返回首页

    1. vue页面15分钟无操作时返回首页 2. 基于vue的倒计时demo 3. 在vue2.0项目中一个简单的倒计时功能 4. vue重新发送验证码 5. 表格<td>里面文字垂直显示

  10. Idea+TestNg配置test-output输出(转)

    说明:testNG的工程我是使用eclipse创建的,直接导入到idea中,运行test时不会生产test-output,只能在idea的控制台中查看运行结果,然后到处报告,经过不懈的百度终于找到怎么 ...