码迷,mamicode.com
首页 > 数据库 > 详细

SqlServer中创建Oracle连接服务器

时间:2015-09-18 00:50:23      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:

转自太祖元年的:http://www.cnblogs.com/jirglt/archive/2012/06/10/2544025.html
参考:http://down.51cto.com/data/910072
SqlServer中创建Oracle连接服务器

第一种:界面操作

(1)展开服务器对象-->链接服务器-->右击“新建链接服务器”
技术分享
(2)输入链接服务器的IP
技术分享

技术分享
(3)链接成功后
技术分享
 
第二种:语句操作

注:需要提前安装Oracle客户端程序,重启机器。(如果没有Oracle客户端程序,提示“未找到Oracle客户端和网络组件”)

EXEC sp_addlinkedserver

@server=‘Province‘, --被访问的服务器别名

@srvproduct=‘ORACLE‘, --SqlServer默认不需要写

@provider=‘MSDAORA‘, --不同的库都是不一样的,OLE DB字符

@datasrc=‘192.168.88.88/ORCL‘--要访问的服务器

GO

 

EXEC sp_addlinkedsrvlogin

@rmtsrvname=‘Province‘, --被访问的服务器别名

@useself=‘false‘, --固定这么写

@locallogin=‘sa‘, --本地操作应户名

@rmtuser=‘kobe‘, --被访问的服务器用户名

@rmtpassword=‘kobe123‘--被访问的服务器用密码

GO

 

--参数解释:

sp_addlinkedserver:创建一个链接的服务器,使其允许对分布式的、针对 OLE DB 数据源的异类查询进行访问。

sp_addlinkedsrvlogin:创建或更新本地 Microsoft® SQL Server™ 实例上的登录与链接服务器上远程登录之间的映射。

现在测试一下,用帐号sa本地登录SqlServer,新建一个查询,输入

SELECT * FROM OPENQUERY(Province, ‘select * from t_base_school‘)

比如:

SELECT organization_id,organization_name FROM OPENQUERY(Province, ‘select * from t_base_organizationtree‘)

没问题的话,就能查询到数据了。

 

一些常用操作:

--查询操作

SELECT * FROM OPENQUERY(Province, ‘select * from t_base_duty‘)

--删除操作

DELETE FROM OPENQUERY(Province, ‘select * from t_base_duty‘)

--插入操作

INSERT INTO OPENQUERY (province,‘SELECT * FROM t_base_role‘) (role_id,role_name,bureautype_id,is_system,b_use,field_order,b_del,identity_id) VALUES (10,‘科比‘,7,1,0,1,0,2)

--更新操作

UPDATE  OPENQUERY (province,‘SELECT * FROM t_base_role‘) SET role_name=‘科比‘ WHERE role_id=10

注:技巧(OPENQUERY(Province, ‘select * from t_base_duty‘) 看做是一张表)

 

SqlServer中创建Oracle连接服务器

标签:

原文地址:http://www.cnblogs.com/xieyunc/p/4817940.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!