使用ODAC112040Xcopy_64bit 将sql server连接到oracle

时间:2018-09-18
本文章向大家介绍使用ODAC112040Xcopy_64bit 将sql server连接到oracle并实现增删改查,需要的朋友可以参考一下

需要一个软件ODAC112040Xcopy_64bit

我连接的oracle是11g r2  sqlserver 是 2016

软件下载

https://pan.baidu.com/s/1OpYmpReEJcPg4wNESWy61Q

服务器先安装.net 2.0和3.5

安装好以后

解压ODAC112040Xcopy_64bit 最好是放到磁盘跟目录,不要有带中文目录名

打开cmd

进入解压目录

运行命令 install.bat all c:oracle odac

 安装好以后c盘会有一个oracle文件夹 有很多文件

 在环境变量path添加

c:oracle
c:oraclebin

按下WIN+R,打开“运行”窗口,输入“regedit”,回车。

在打开的注册表编辑器的左侧按如下路径依次展开:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft SQL ServerMSSQL13.MSSQLSERVERProviders

在Providers下面一般来说是看不到OraOLEDB.Oracle这一项的,于是新建这一项。

在Providers上面右键选择New -> 项,把新增加的项改名为“OraOLEDB.Oracle”

为“OraOLEDB.Oracle”这个键新增一个DWORD 32位,把名字改为“AllowInProcess”

把“AllowInProcess”的值改为“00000001”

然后现在重启一下服务器

新建链接服务器

填写链接服务器名称,产品名称随便。还有数据源 ip:端口/sid

安全性输入oracle账号密码

 

点击测试 美滋滋

sql server 操作oracle增删改查

--查询
select * from openquery(ysnc,'select zy from er_bxzb where djbh=''264X201809120846''');

--更新

update a set a.zy='17年度部门长年度奖品' from openquery(ysnc,'select * from er_bxzb where djbh=''264X201809120846''') a where a.djbh='264X201809120846'

update a set a.username='haha' from openquery(ysnc,'select * from test01') a where a.nianlin=23

--插入
insert openquery(ysnc,'select * from test01') select 'wbf','888888',12

--删除
delete from openquery(ysnc,'select * from test01') where nianlin=12