在开发中用到的Oracle与SQL Server间数据传输的不同方法的整理,比较。包括原理的
简介,配置和实现方法,优缺点的比较,使用平台和DB,适合的应用范围和效能的比较。

整理的方法有如下六种:

1. Oracle Transparent Gateway Connect to SQL Server
使用Oracle提供的透明网关建立异构数据库连接关系。实现数据传输。
支持Distribution Transaction, 效能极好,使用时与普通SQL用法基本一致,异构数据库之间的联系
非常透明,且在使用SQL Server提供的数据时同样可以应用到Oracle Procedure等特有资源,因此仅需一
次性的配置,基本不需要在使用中再进行任何培训。
适合同时使用以Oracle为主的多种数据库且有数据关联的项目,使用教透明,在开发中基本不必考虑异构数
据库的影响,且能提供完善的事务支持。

2. SQL Server Link Server
使用MS SQL Server 提供的Linked Server建立对其他异构数据库服务器的单向信任连接,实现数据传输。
支持Distribution Transaction, 效能较好,但存在平台限制,连接仅能设置在SQL Server端,使用较透明。
使用时SQL语法与常用方法差别很小,很利于开发人员快速适应使用。
适合同时使用以SQL Server为主的多种数据库且有数据关联的项目,使用教透明,在开发中基本不必考虑异
构数据库的影响,且能提供完善的事务支持。

3. Web Method 构建统一数据平台
开发方便快速,不受OS等平台限制,有很完备的log机制但是不支持Transaction,对Table Schema等
数据库对象的初期维护要求较高,不易推广。
Web Method平台不太适合用于SQL Server与Oracle之间的数据转换,这跟用其他语言程序来访问数据
库获得数据然后Insert在本质上没有什么区别, 非常适合于有类似订阅发布机制的数据传输和转换的需求,适
合系统数据整合,即实现各个系统间数据的同步。

4. 基于Web Service的Oracle与SQL Server之间进行数据交换
能够桥接不同组件模块的系统、操作系统和编程语言之间的差异,可直接在Web Service发布的服务器上进
行更新,而不需要考虑对客户端的影响,可以在后台进行启用,可减少用户的无效等待时间。有完整的数据传输
Check机制,但是同样不支持Transaction,而且数据传输使用明文,安全性不高,且较二进制代码效率较低。
 适合需要在不同平台间进行数据交互(即Oracle 和 SQL Server分别被不同的平台使用), 需要的透明性
比较强但又不希望数据库被其它用户直接操作, 同时对事物处理要求不高,且难以在本地部署或者本地部署代价
过高的情况。

5. Visual Basic (AP)实现数据传输
使用Visual Basic,利用COM+和MTS等通过VB编码实现不同DB间的数据传输。VB简单易学。有利于
快速开发系统。MTS屏蔽了底层实现的复杂性,使开发人员可以将精力集中在业务逻辑上。但是实现方案本身配置
复杂,需要打各种补丁(patch),对系统依赖性强。
适合Oracle与SQL Server之间进行数据传输,需要事务支持,且传输过程还有依据业务逻辑对数据进行
处理的需求。

6. DTS数据传输
使用MS SQL Server提供的DTS进行异构数据库的数据传输。
操作简单,仅需托拽,也可以编辑脚本执行并且可以作为SQL Job执行。 数据流向灵活,为双向。但功能单,
仅能实现数据传输,不能应对复杂业务逻辑,无事务级约束,无法保证数据传输的完整性。效能一般。
  比较适合单纯的少量数据的导入导出操作,且对数据的完整性要求不高。

http://www.doc88.com/p-188634055285.html

Oracle & SQL Server 数据传输的更多相关文章

  1. 介绍几种大型的Oracle/SQL Server数据库免费版

    我们知道,Oracle和SQL Server等大型数据库也都存在一些免费的版本,这些免费的版本已经能够满足许多中小项目的需求.对于在校大学生来说,从学习的目标上来讲,安装免费版的大型数据库也就足够用了 ...

  2. Oracle,SQL Server 数据库较MySql数据库,Sql语句差异

    原文:Oracle,SQL Server 数据库较MySql数据库,Sql语句差异 Oracle,SQL Server 数据库较MySql数据库,Sql语句差异 1.关系型数据库 百度百科 关系数据库 ...

  3. mysql,oracle,sql server数据库默认的端口号,端口号可以为负数吗?以及常用协议所对应的缺省端口号

    mysql,oracle,sql server数据库默认的端口号? mysql:3306 Oracle:1521 sql server:1433 端口号可以为负吗? 不可以,端口号都有范围的,0~65 ...

  4. 触发器实现对插入数据的字段更改 Oracle+SQL Server

    最近有个使用触发器实现对插入数据的某个列做更改的需求,因此整理了Oracle和SQL Server对于此类需求的触发器写法,本文仅提到了Insert触发器. 首先我们创建一张表: --创建Test表 ...

  5. 使用sql查询mysql/oracle/sql server/gp数据库中指定表的字段信息(字段名/字段类型/字段长度/是否是主键/是否为空)

    1,根据数据库类型拼接不同URL /** * 根据类型不同拼接连接的URL * @param dbType 1:mysql.2:oracle.3:sql server.4:gp * @param ip ...

  6. 转:不在同一个服务器上的数据库之间的数据操作(oracle/sql server的对比)

    如何操做不在同一个数据库中的数据操作: 一.对于SQL server来讲:  1.采用创建链接服务器的方式:    (1).创建链接服务器       exec sp_addlinkedserver  ...

  7. mysql,oracle,sql server中的默认事务隔离级别查看,更改

    未提交读(隔离事务的最低级别,只能保证不读取物理上损坏的数据) 已提交读(数据库引擎的默认级别) 可重复读 可序列化(隔离事务的最高级别,事务之间完全隔离) 可串行化比较严谨,级别高; MySQL m ...

  8. Perl/C#连接Oracle/SQL Server和简单操作

    连接数据库是一个很常见也很必须的操作.先将我用到的总结一下. 1. Perl 连接数据库 Perl 连接数据库的思路都是: 1)使用DBI模块: 2)创建数据库连接句柄dbh: 3)利用dbh创建语句 ...

  9. MySQL/Oracle/SQL Server默认端口、JDBCdriver、Url

    sqlserver默认端口号为:1433URL:"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=dbname"DRI ...

随机推荐

  1. 年终盘点:Java今年的大事记都在这里!

    在2017年即将结束之际,我们最好停下脚步来看看过去十二个月Java的发展情况.本文,笔者盘点了IT168企业级一年来对Java的跟踪报道. 这一年对Java来说是不容易的,从Java 9一再延期备受 ...

  2. Java进阶知识点5:服务端高并发的基石 - NIO与Reactor模式以及AIO与Proactor模式

    一.背景 要提升服务器的并发处理能力,通常有两大方向的思路. 1.系统架构层面.比如负载均衡.多级缓存.单元化部署等等. 2.单节点优化层面.比如修复代码级别的性能Bug.JVM参数调优.IO优化等等 ...

  3. HDU - 6395:Sequence (分块+矩阵)

    题面太丑了,就不复制了. 题意:F1=A: F2=B: Fn=D*Fn-1+C*Fn-2+P/i:求Fn. 思路:根据P/i的值划分区间,每个区间矩阵求. 带常数的矩阵: #include<bi ...

  4. 高级C/C++编译技术之读书笔记(四)之定位库文件

    最近有幸阅读了<高级C/C++编译技术>深受启发,该书深入浅出地讲解了构建过程(编译.链接)中的各种细节,从多个角度展示了程序与库文件或代码的集成方法,提出了面向代码复用和系统集成的软件架 ...

  5. Fast Arrangement (线段树,延迟标志)

    个人心得:线段树的延迟标志确实是减少了很多时间,思想比较简单,但是实现得时候和建立延迟的时候比较麻烦. 按照我的一些理解,就是更新时找到完全覆盖的区间时,更新延迟标志,不再往下更新,但此时父节点啥的都 ...

  6. 【java规则引擎】基本语法和相关属性介绍

    一个规则的语法信息 [1]条件部分(LSH部分)===>规则pattern之间的连接条件符号:   (1)LHS 部分是由一个或多个条件组成,条件又称之为 pattern(匹配模式),多个 pa ...

  7. LA2572 Viva Confetti

    题意 PDF 分析 两两圆求交点,对每个圆弧按半径抖动. 时间复杂度\(O(T n^2)\) 代码 #include<iostream> #include<cstdio> #i ...

  8. 洛谷 P1262 间谍网络

    传送门 题目大意:A能揭发B,B能揭发C..某些人可以被收买,如果收买A,那么A,B,C..的情报都可以得到. 求能否得到所有情报,如果可以最少花费多少钱去收买. 题解:tajian缩点 dfs/bf ...

  9. fn project 运行时配置选项

    Env Variables Description Default values DB_URL The database URL to use in URL format. SeeDatabases  ...

  10. 《笔者带你剖析Apache Commons DbUtils 1.6》(转)

    前言 关于Apache的DbUtils中间件或许了解的人并不多,大部分开发人员在生成环境中更 多的是依靠Hibernate.Ibatis.Spring JDBC.JPA等大厂提供的持久层技术解决方案, ...