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

由于业务逻辑的多样性,经常得在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

时间: 2024-08-06 11:55:02

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

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

一.安装驱动 如果用32位win2003操作系统,会有系统自带的Microsoft OLE DB Provider for Oracle驱动,因此不需要做额外的准备工作,但如果使用的是64位系统,那么这个驱动是没有的,并且微软也不提供这个驱动的64位版本,因此,此时只能使用Oracle提供的Oracle Provider for OLE DB这个驱动. 安装一个完整的Oracle11gR2程序也是一个有效的方法,但这个64位版本的安装包有2个多G,相当庞大,如果仅仅是为了建立链接服务器,完全没必

SQL Server中创建Oracle的链接服务器

SQL Server中的查询

      本博文简单介绍一下SQL Server中常用的几类查询及相关使用的方法.       一.ExecuteScalar方法获取单一值       ExecuteScalar方法是SqlCommand类的方法之一,执行查询,并返回查询所返回的结果集中的第一行第一列.        class Program { static void Main(string[] args) { string strCon = "Data Source=192.168.24.193;Initial Cat

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

SQL SERVER中XML查询:FOR XML指定PATH 前言 在SQL SERVER中,XML查询能够指定RAW,AUTO,EXPLICIT,PATH.本文用一些实例介绍SQL SERVER中指定PATH的XML查询. PATH參数 PATH('參数'),參数是用来重命名ROW的,ROW是默认生成的名称. select 'Hui' for xml path  结果:<row>Hui</row> select 'Hui' for xml path ('root') 结果:<

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

    在平时查询以及导数据时,经常会遇到需要使用两个数据库里数据的情况,这时就会用到在两个服务器之间建立一个链接,进行操作,脚本语句如下: 举例:例如你在测试服务器上想要查询业务库里的数据信息,此脚本就需要在测试服务器上执行,输入业务服务器的IP地址.业务服务器的账户.密码,然后执行语句即可:反之,如果你需要将测试数据库的数据导入正式库内,就需要在正式库内建立可以连接到测试库的链接. --创建链接服务器 exec sp_addlinkedserver 'ITSV' , '' , 'SQLOLE

在MS sql server上如何创建mysql链接服务器

系统环境: Microsoft Windows Server 2003 Enterprise Edition Service Pack 2 [Microsoft Windows NT-5.2(3790)] SQL Server Enterprise Edition 8.00.2066(sp4) centOS mysql 部署步骤: linux环境 1.在mysql中创建账号及访问数据库权限(包括允许的访问IP) windows环境 1.在mssql中创建本地账号,最好和mysql中创建的账号一样

1 sql server中添加链接服务器

1  链接到另一个sql server 的实例 exec sp_addlinkedserver @server= '服务器的地址',@srvproduct='SQL Server' go 分布式查询中不支持xml数据类型的返回 2 sql server 连接到外部数据源 条件ole db提供程序是可以用的   当电子表格在excel中处于打开状态时,sql server不能执行访问excel表格的分布式查询 exec sp_addlinkedserver @server='Template', 

【转载】SQL Server中查询CPU占用高的SQL语句

本文导读:触发器造成死锁.作业多且频繁.中间表的大量使用.游标的大量使用.索引的设计不合理.事务操作频繁.SQL语句设计不合理,都会造成查询效率低下.影响服务器性能的发挥.我们可以使用sql server自带的性能分析追踪工具sql profiler分析数据库设计所产生问题的来源,进行有针对性的处理:下面介绍SQL Server中如何查询CPU占用高的SQL语句 SQL Server中查询CPU占用高的情况,会用到sys.sysprocesses ,dm_exec_sessions ,dm_ex

sql server中使用链接服务器访问oracle数据库

一.  安装配置oracle客户端 要访问orcale数据,必须在访问的客户端机器上安装oracle客户端. Orcale有两种形式的客户端: l         完整的客户端 包括访问服务器端数据库的基本Oracle 的 Microsoft OLE DB 访问接口需要 Oracle Client Software Support File以及 SQL*Net .还包括用于配置客户端设置的工具.sqlplus.企业管理器等一系列的工具. l         立即客户端(instant clien