您的位置:首页 > 数据库

sql server中分布式查询随笔(链接服务器(sp_addlinkedserver)和远程

2009-09-08 12:15 597 查看
 
 

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

 

Posted on 2005-03-16 13:38 aierong 阅读(3657) 评论(5)  编辑 收藏 引用 网摘 所属分类: DB


由于业务逻辑的多样性

经常得在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

 

 

希望上面提到的知识对你有所提示

当然欢迎交流和指正

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐