易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle与SQL Server数据互易性(1)

作者 Haidong Ji 翻译 GoodKid
我们当中的大部分人工作在一个单一的 RDBMS 系统中,如 MSSQL, Oracle, or IBM DB2。然而,我们日益感觉到,我们正处于不同的数据库环境当中并且需要解决数据的互用性问题。
尽管主要的 RDBMS 厂商试图去遵循关系数据库模型原理,并且用非常小的差异去实现它们。另外,几乎主要的 RDBMS 厂商都遵循 SQL-92 标准。他们仍然有他们自己的对该标准的扩展。例如,Oracle 的 PL/SQL 和 Microsoft 的 T-SQL ,对 ANSI SQL进行了更多的扩展。
通过一系列的文章,我将指明在 SQL Server 和 Oracle 之间的数据互用性。我将讨论在两种不同的 RDBMS 中的数据类型。专门的,我将讨论 Oracle 的 timestamp 和 SQL Server 的 datetime,在DTS,连接服务器和分布式查询中,它们的互用性可能导致许多问题。
Oracle 和 SQL Server 数据类型不同点的概述
绝大部分,Oracle 和 SQL Server 有着兼容的数据类型,尽管它们有着不同的名字,以及精度或比例。例如:Oracle 的 CHAR 对应于 SQL Server 的 CHAR ,但是它们的宽度不同。在 Oracle, CHAR 最大到2000 bytes。在 SQL Server,则可以达到 8000 bytes。 SQL Server 的VARCHAR 对应 Oracle 的VARCHAR2 。并且它们的宽度是不同的 (Oracle VARCHAR2 4000, SQL Server VARCHAR 8000) 。在数字类型方面也有不同。在 Oracle,几乎只有一个数字类型NUMBER,依靠定义它的精度和比例,它可以匹配 SQL Server 的 tinyint, smallint, int, bigint, 以及 numeric 数据类型。在 Oracle 中,你可以制作一个序列,它可以匹配 SQL Server 的唯一标识字段。
在二进制数据类型方面,Oracle 具有 RAW, LONG RAW, 和 BLOB等类型。它们应该能够兼容SQL Server中的 varbinary 和 image 数据类型。 我说“应该”,是因为我还没有自己测试过这一点。或许在下一次我可以进行这个工作 。更多的数据类型的细节,请参考 Microsoft SQL Server BOL 和 Oracle 的文档。
对于一个Oracle的表,在SQL Server中做一个对应的表,最好的办法是使用 DTS 导入向导生成一个 CREATE TABLE DDL 语句。如果Oracle的表有一个TIMESTAMP 字段,你将面临一些问题,下一节我将指明。
Oracle TIMESTAMP 和 Microsoft SQL Server datetime 转换问题
在 Oracle 中,TIMESTAMP 类型使你解析时间的精度是10亿份之一秒。尽管SQL Server


相关文档:

oracle 表空间操作

oracle表空间操作详解
  1
  2
  3作者:   来源:    更新日期:2006-01-04 
  5
  6 
  7建立表空间
  8
  9CREATE TABLESPACE data01
 10DATAFILE '/ora ......

Oracle 学习:PL/SQL循序渐进全面学习教程

 课程十三 使用组合数据类型* 游标操纵数据
  
  本课重点:
  1、创建用户自定义的PLSQL记录
  2、利用%ROWTYPE属性来创建记录
  3、创建PLSQL表
  4、描述记录、表、记录的表之间的区别
  注意:以下实例中标点均为英文半角
  一、合成数据类型
  1、类型分为PLSQL记录和PLSQL表
  2� ......

一个稍微修改的SQL无限分级

前段时间  把之前的无限分级表稍微做了一些改进 改进后的表结构如下
ID  Name  ParentID ParentIDList  level
1    A          0             0-1   &nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号