网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > DB2教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.DB2数据库的表数据加密代码解析.
.DB2数据库控制中心乱码问题解决方.
.DB2数据库更新执行计划的几个常见.
.关于DB2 9数据库优点及缺点详细分.
.DB2用户定义函数实现多种语言的排.
.使用DB2look 重新创建优化器访问.
.DB2提供的两种DB连接方式type1和.
.深入探讨DB2 9.5中的锁定超时分析.
.讲解IBM DB2数据库的常用日期操作.
.IBM 数据库 DB2 9 的九大新特性(.
.DB2 数据库应用中使用受信任上下.
.在DB2环境中创建DB2数据库.
.实例讲解IBM DB2中提高并发度的三.
.无限活动日志策略的介绍、配置、.
.选择 IBM DB2数据库的五大理由.
.DB2 for z/OS Web 应用程序死锁分.
.利用表空间的备份快速恢复IBM DB.
.AIX环境下实现DB2向Windows 2000.
.DB2 实用程序介绍之数据移动实用.
.个人经验总结:DB2数据库逻辑卷的.

Oracle与DB2数据类型的分类对应说明

发表日期:2008-2-9


  首先,通过下表介绍与DB2/400数据类型之间的对应关系,是一对多的关系,具体采用哪种对应关系,应具体问题具体分析。   注重事项:Oracle中的DATE含有年、月、日、时、分、秒,它和DB2/400中的DATE不相互对应,DB2/400中的DATE只有年、月、日,TIME类型含有时、分、秒,因此日期和时间类型要进行转换,请参照下表。   
Oracle
DB2/400
Oracle数据类型
注重事项 DB2 UDB数据类型 注重事项
DATE DATE
TIME
TIMESTAMP l
假如只使用MM/DD/YYY,那么使用DATE类型。
l 假如只使用HH:MM:SS, 那么使用TIME类型。
l 假如要使用日期和时间,则使用时间戳类型(TIMESTAMP)
l 可以使用Oracle中的TO_CHAR()函数来取DATE的字串来分别与DB2/400的DATE、TIME相匹配。
VARCHAR2(n) n<=4000
CHAR(n)
VARCHAR(n) l
若n<=32766,则使用DB2/400中的CHAR类型、VARCHAR
LONG n<=2GB VARCHAR(n)
CLOB(n) l
若n<=32K,则使用DB2/400中的CHAR类型、VARCHAR。
l 若32K=< n <=2GB,则使用CLOB。
ROW&
LONG ROW
n<=255 CHAR(n) FOR BIT DATA
VARCHAR(n) FOR BIT DATA
BLOB(n) l
若n<=32K, 则使用CHAR(n) FOR BIT DATA 或
VARCHAR(n) FOR BIT DATA
l 若n<=2GB, 则使用BLOB(n)
BLOB
n<=4GB BLOB(n) 若n<=2GB, 则使用BLOB(n)
CLOB
n<=4GB CLOB(n) 若n<=2GB, 则使用CLOB(n)
NCLOB
n<=4GB DBCLOB(n) 若n<=2GB, 则使用DBCLOB(n/2)
NUMBER SMALLINT/INTEGER/BIGINT
DECIMAL(p,s)/NUMBER(p,s)
Float(n)/ REAL/DOUBLE l
若Oracle中定义NUMBER(p) 或 NUMBER(p,s), 则使用SAMLLINT/INTEGER/BIGINT
l 若Oracle中定义NUMBER(p,s), 则使用DECIMAL(p,s)
l 若Oracle中定义NUMBER,则使用FLOAT(n)/REAL/DOUBLE
  NUMBER  Oracle中的NUMBER类型可以对应DB2/400中的很多类型,这种对应关系要依靠于Oracle中number将用于保存何种类型的数据,是整型还是带有小数位的实型数据,另外还要考虑类型所占用的存储空间,例如:SAMLLINT占2 byte, INTEGER占4 byte; BIGINT占8 byte;Oracle中的NUMBER类型所占用的存储空间要根据它的定义而定,例如缺省精度下的NUMBER有38个数字长,占用20 byte的空间。具体的对应关系请参照上表。  ROW and LOB类型  DB2/400提供VARCHAR和CLOB与ORACLE中的RAW和LONG RAW相对应。ORACLE也支持大对象:BLOB、CLOB、CLOB和NCLOB, ORACLE中的BLOB和CLOB可以提供4GB的空间,而DB2/400中的BLOB和CLOB只能存放2GB的数据;DB2/400中的DBCLOB与ORACLE中的NCLOB 2GB相对应。Oracle 中的BFILE数据类型用于治理数据库以外的二进制数据,数据库中的表将指向数据库外部的存放的BFILE文件,DB2/400也提供一个类似的数据类型DATALINK相对应。  ROWID  Oracle ROWIND虚拟列用于对表中的某一列进行唯一标示,DB2/400中也有这样的数据类型ROWID,它与ORACLE中的ROWID的功能相似。DB2/400中的ROWID可以存放40 byte的数据用来唯一标示表中的每一行,它没有ccsid属性,这些信息中没有关于datafile、 block 或 row的信息。  例如:  CREATE TABLE LIBRARYNAME/ORDERS2 (ORDERNO ROWID, SHIPPED_TO VARCHAR (36) , ORDER_DATE DATE) ORDERNO的数据类型为ROWID,用于存放订单号,每当插入一行时,系统自动生成一个值,存放进这个字段。可以用OPERATION NAVIGATOR查看它的内容。  Character type  DB2/400的CHAR、VARCHAR类型与ORACLE中的VARCHAR2(n)类型相对应,但是ORACLE中的VARCHAR2(n)类型仅用于存放较小的字符串,这里的n小于4000,因此在这种情况下,最好用定长的CHAR(N)类型与ORACLE的VARCHAR2(n)相对应,这样不仅可以提高效率,还可以节省存储空间,若使用VARCHAR(n)类型最好用ALLOCATE参数,这样可以提高数据库的性能,它可以减少内存和硬盘之间的输入/输出操作。  要注重DB2/400中的字符串中文输入问题,要想在DB2/400上输入中文应用这样的SQL创建表,这里的CCSID 935,代表简体中文。
上一篇:DB2如何提高IMPORT命令的性能 人气:866
下一篇:在Linux上实现DB2双机HA完整方案(1) 人气:951
浏览全部DB2教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐