数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
sql server中分布式查询随笔(链接服务器(sp_addlinkedserver)和远程登录映射(sp_addlinkedsrvlogin)使用小总结)

作者:未知 来源:月光软件站 加入时间:2005-6-5 月光软件站

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

希望上面提到的知识对你有所提示
当然欢迎交流和指正

author:aierong
blog:http://www.cnblogs.com/aierong
email:[email protected]




相关文章

相关软件