SQL Server 2008-LinkServer操作ORACLE
链接来源:https://www.cnblogs.com/wangyong/p/Oracle.html
最近项目有需求需要通过SQL Server2008中的数据自动更新到ORACLE中,其实,一开始肯定会想到触发器,因为可以保证实时性。
方案一:
首先,我很确定的一件事情就是MSSQL中的存储过程和触发器可以调用C#编写的dll文件,所以最开始的想法就是在SQL Server中创建表的触发器,然后调用客户端的同步程序(C#, C++,JAVA编写的小程序),这样,可以在客户端程序完成连接Oracle数据库和向里面插入的功能,这种方式虽然可以实现;
基本思路如下:MSSQL触发器==》客户端同步程序==》Oracle CRUD.
这种思路的类似实现方式在几年前的一个项目中使用过,运行效果不错,可以满足客户端获取数据的实时性和高效性。
方案二:
这次主要讨论这种方案,毕竟,总是要尝试新东西(对我来说这种方式目前还没运用到项目中)
首先我在电脑上安装了SQL Server2008 R2 以及Oracle11g,以及PL/SQL Developer,然后接下来操作我用截图进行展示:
第一步:测试oracle的安装是否正确,用 pl/sql developer进行连接,以及创建一张表,默认插入一条数据





第二步:oracle的数据表准备好后,开始SQL Server 2008 R2端创建LINKED SERVER



可以看到,oracle中的一条数据,在SQL SERVER2008 R2端可以查询到,接下来,继续看看insert、update、delete语句的使用语法


完成Insert、update操作后,在PL/SQL developer 中查询下表中的数据,验证下是否操作成功(结果显示是成功的)。

最后,来个删除操作,仔细看下截图中两个不同的删除语法,是不是可以得到一点启发...


一个简单的介绍,结合触发器获取可以实现一些很不错的功能~~~
补充一点:如果是电脑上没有安装oracle,利用SQL Server2008建立链接的时候会发现找不到oraOLEDB.Oracle这个接口,如果是64位的系统,需要安装64位的oracle客户端即可,下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win64soft-094461.html ,因为我使用的是Oracle11g,所以下载的是win64_11gR2_client,当然,你安装完后,如果你想利用pl/sql developer来建立连接,想必是不行的(plsql developer需要32未的oci.dll),所以可以再复制一个32位的oracle 客户端来帮助你建立连接....
还有,如果在64位的电脑上直接安装32位的oracle客户端,你会发现plsql developer虽然可以正常连接,但是在SQL Server2008的访问接口中找不到oraOLEDB.Oracle,所以一定要注意版本问题!!!
所以,如果你的64位电脑重来没装过oracle的产品,只有Miscrosoft SQL Server2008 ,建议的步骤是:1)安装64位oracle客户端(选择管理员安装模式);2)有时可能需要重启电脑。
SQL Server 2008-LinkServer操作ORACLE的更多相关文章
- SQL Server 2008 R2 链接 Oracle 10g
首先sqlserver 链接oracle可以通过两个访问接口: “MSDAORA” 和“OraOLEDB.Oracle” 1.“MSDAORA”访问接口是由Microsoft OLE DB Provi ...
- SQL Server 2008 R2 链接 Oracle
参考网站: SP_addlinkedserver 小结 (oracle,sql server,access,excel) 64位SqlServer通过链接服务器与32位oracle通讯 SQL Ser ...
- [C#对sql操作]C#对sql server 2008数据库操作
using System.Data; using System.Data.SqlClient SqlConnection conn = new SqlConnection(System.Configu ...
- 使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g
ORACLE官方提供的Sql Developer自带的Oracle Migration Workbench. 什么是Oracle SQL Developer?在官方页面上,是这样介绍它的: Oracl ...
- SQL Server 2008通过LinkServer操作ORACLE
时光荏苒~~ 最近项目有需求需要通过SQL Server2008中的数据自动更新到ORACLE中,其实,一开始肯定会想到触发器,因为可以保证实时性. 方案一: 首先,我很确定的一件事情就是MSSQL中 ...
- SQL Server 2008创建oracle链接服务器(心得)
操作系统是32位的情况下,曾经没费太多时间创建好了到oracle的链接服务器.主要要点就是: 1.安装oracle精简客户端.当时我用的是版本比较低的“oracle9i310-客户端简化版”,安装好了 ...
- SQL SERVER 2008向ORACLE 11G迁移示例
来源于:http://www.cnblogs.com/hiizsk/ 由SQL SERVER 2008向ORACLE 11G迁移过程记录之一-表 使用Oracle Sql Developer将SQL ...
- PHP操作SQL Server 2008/2012
PHP操作SQL Server驱动,微软官方提供2个版本,Version 2.0 和 Version 3.0 Version 2.0 版本支持的操作系统有: Windows Server 2003 S ...
- sql server 2008 r2 中的oracle发布使用笔记
sql server 2008 r2 中的oracle发布功能,能够将oracle数据库作为发布服务器,将oracle中的数据自动同步到sql server 数据库中,在新建oracle发布前确保sq ...
- 唐伯猫的 sql server 2008 的安装和操作记录
在服务器win 2008 server r2 上安装sql 首先下载sql server 2008 ,云盘有存储sql,很多论坛也有下载SQLEXPRADV_x64_CHS.exe 双击sql s ...
随机推荐
- HTML语义化罗嗦罗嗦
CSS还未诞生之前,为了实现一些样式效果.设计师必须使用一些物理标签,例如font.b等.这样会造成页面中充满了为实现各种样式的标签,特别是使用table标签来实现一些特殊的布局,俗称为"标 ...
- vue知识点15
1.回调地狱的三种方案:函数 promise async await 2. 子组件与子组件之间的传递: 可以借用公共父元素.子组件A this.$emit(" ...
- WCF服务创建到发布(SqlServer版)
在本示例开始之前,让我们先来了解一下什么是wcf? wcf有哪些特点? wcf是一个面向服务编程的综合分层架构.该架构的项层为服务模型层. 使用户用最少的时间和精力建立自己的软件产品和外界通信的模型. ...
- 在学习python的过程中,遇到的最大的困难是什么?
本人文科生,回顾自己近 2 年的Python 自学经历,有一些学习心得和避坑经验分享给大家,让大家在学习 Python 的过程中少走一些弯路!减少遇到不必要的学习困难! 首先,最开始最大的困难应该就是 ...
- 010_Markdown学习
目录 Markdown学习 标题 三级标题 四级标题 五级标题 六级标题 字体 引用 分割线 图片 超链接 列表 表格 代码 Markdown学习 标题 三级标题 四级标题 五级标题 六级标题 字体 ...
- Java网关服务-AIO(一)
Java网关-AIO(一) aio:声明一个byteBuffer,异步读,读完了之后回调,相比于Future.get(),可以减少阻塞.减少线程等待,充分利用有限的线程 nio:声明一个byteBuf ...
- 解决Linux-Centos7启动Mysql服务失败丢失mysql.sock问题
在新安装mysql后进行启动发现报错 mysql启动服务命令 systemctl start mysqld@3306 Starting mysqld (via systemctl): Job for ...
- SQL Server 列存储索引 第二篇:设计
列存储索引可以是聚集的,也可以是非聚集的,用户可以在表上创建聚集的列存储索引(Clustered Columnstore Index)或非聚集的列存储索引(Nonclustered Columnsto ...
- Longest common subsequence(LCS)
问题 说明该问题在生物学中的实际意义 Biological applications often need to compare the DNA of two (or more) different ...
- CodeForces 题目乱做
是个补题记录. 1419 除了 F 场上都过了. CF1419A Digit Game 这题好多人 FST 啊-- 考虑如果串长为奇数那么最后操作的肯定是第一个人,串长为偶数的最后操作的肯定是第二个, ...