偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Oracle與DB2的數(shù)據(jù)類型說明

數(shù)據(jù)庫
本文為您介紹了Oracle和DB2的數(shù)據(jù)類型,并進(jìn)行了詳細(xì)的說明,需要說明的是,Oracle中的DATE含有年、月、日、時(shí)、分、秒,它和DB2/400中的DATE不相互對應(yīng),DB2/400中的DATE只有年、月、日,TIME類型含有時(shí)、分、秒,因此日期和時(shí)間類型要進(jìn)行轉(zhuǎn)換。

本文為您介紹了Oracle和DB2的數(shù)據(jù)類型,并進(jìn)行了詳細(xì)的說明,需要說明的是,Oracle中的DATE含有年、月、日、時(shí)、分、秒,它和DB2/400中的DATE不相互對應(yīng),DB2/400中的DATE只有年、月、日,TIME類型含有時(shí)、分、秒,因此日期和時(shí)間類型要進(jìn)行轉(zhuǎn)換。

首先,通過下表介紹與DB2/400數(shù)據(jù)類型之間的對應(yīng)關(guān)系,是一對多的關(guān)系,具體采用哪種對應(yīng)關(guān)系,應(yīng)具體問題具體分析。

注意事項(xiàng):

Oracle中的DATE含有年、月、日、時(shí)、分、秒,它和DB2/400中的DATE不相互對應(yīng),DB2/400中的DATE只有年、月、日,TIME類型含有時(shí)、分、秒,因此日期和時(shí)間類型要進(jìn)行轉(zhuǎn)換,請參照下表。

Oracle
DB2/400
Oracle數(shù)據(jù)類型
注意事項(xiàng) DB2 UDB數(shù)據(jù)類型 注意事項(xiàng)
DATE   DATE
TIME
TIMESTAMP l
如果只使用MM/DD/YYY,那么使用DATE類型。
l 如果只使用HH:MM:SS, 那么使用TIME類型。
l 如果要使用日期和時(shí)間,則使用時(shí)間戳類型(TIMESTAMP)
l 可以使用Oracle中的TO_CHAR()函數(shù)來取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類型可以對應(yīng)DB2/400中的很多類型,這種對應(yīng)關(guān)系要依賴于Oracle中number將用于保存何種類型的數(shù)據(jù),是整型還是帶有小數(shù)位的實(shí)型數(shù)據(jù),另外還要考慮類型所占用的存儲空間,例如:SAMLLINT占2 byte, INTEGER占4 byte; BIGINT占8 byte;Oracle中的NUMBER類型所占用的存#p#儲空間要根據(jù)它的定義而定,例如缺省精度下的NUMBER有38個(gè)數(shù)字長,占用20 byte的空間。具體的對應(yīng)關(guān)系請參照上表。

ROW and LOB類型

DB2/400提供VARCHAR和CLOB與ORACLE中的RAW和LONG RAW相對應(yīng)。ORACLE也支持大對象:BLOB、CLOB、CLOB和NCLOB, ORACLE中的BLOB和CLOB可以提供4GB的空間,而DB2/400中的BLOB和CLOB只能存放2GB的數(shù)據(jù);DB2/400中的DBCLOB與ORACLE中的NCLOB 2GB相對應(yīng)。Oracle 中的BFILE數(shù)據(jù)類型用于管理數(shù)據(jù)庫以外的二進(jìn)制數(shù)據(jù),數(shù)據(jù)庫中的表將指向數(shù)據(jù)庫外部的存放的BFILE文件,DB2/400也提供一個(gè)類似的數(shù)據(jù)類型DATALINK相對應(yīng)。

ROWID

Oracle ROWIND虛擬列用于對表中的某一列進(jìn)行唯一標(biāo)示,DB2/400中也有這樣的數(shù)據(jù)類型ROWID,它與ORACLE中的ROWID的功能相似。DB2/400中的ROWID可以存放40 byte的數(shù)據(jù)用來唯一標(biāo)示表中的每一行,它沒有ccsid屬性,這些信息中沒有關(guān)于datafile、 block 或 row的信息。

例如:

CREATE TABLE LIBRARYNAME/ORDERS2 (ORDERNO ROWID, SHIPPED_TO VARCHAR (36) , ORDER_DATE DATE) ORDERNO的數(shù)據(jù)類型為ROWID,用于存放訂單號,每當(dāng)插入一行時(shí),系統(tǒng)自動生成一個(gè)值,存放進(jìn)這個(gè)字段。可以用OPERATION NAVIGATOR查看它的內(nèi)容。

Character type

DB2/400的CHAR、VARCHAR類型與ORACLE中的VARCHAR2(n)類型相對應(yīng),但是ORACLE中的VARCHAR2(n)類型僅用于存放較小的字符串,這里的n小于4000,因此在這種情況下,最好用定長的CHAR(N)類型與ORACLE的VARCHAR2(n)相對應(yīng),這樣不僅可以提高效率,還可以節(jié)省存儲空間,若使用VARCHAR(n)類型最好用ALLOCATE參數(shù),這樣可以提高數(shù)據(jù)庫的性能,它可以減少內(nèi)存和硬盤之間的輸入/輸出操作。

要注意DB2/400中的字符串中文輸入問題,要想在DB2/400上輸入中文應(yīng)用這樣的SQL創(chuàng)建表,這里的CCSID 935,代表簡體中文。

 

責(zé)任編輯:段燃 來源: 賽迪論壇
相關(guān)推薦

2010-08-11 09:14:33

DB2數(shù)據(jù)類型

2010-08-10 17:17:59

2010-08-26 09:44:42

db2數(shù)據(jù)類型

2018-01-02 20:35:00

數(shù)據(jù)庫MySQLDB2

2010-11-01 14:14:59

DB2數(shù)值型數(shù)據(jù)類型

2010-08-31 14:04:49

DB2驅(qū)動

2010-08-09 15:44:44

DB2 數(shù)據(jù)類型

2011-09-02 13:50:36

OracleDB2數(shù)據(jù)存儲模式

2010-08-16 15:06:15

DB2數(shù)據(jù)類型轉(zhuǎn)換

2011-03-16 15:07:10

DB2數(shù)據(jù)庫數(shù)據(jù)類型

2010-08-20 10:26:25

DB2數(shù)據(jù)類型

2010-08-16 09:55:23

DB2數(shù)據(jù)類型

2010-11-01 14:26:12

DB2日期時(shí)間型數(shù)據(jù)類

2010-08-31 09:54:37

DB2Oracle

2010-08-27 15:13:14

DB2命令AIX

2010-08-19 13:36:11

DB2數(shù)據(jù)類型

2010-11-03 16:16:09

DB2目錄視圖

2010-11-02 11:22:06

DB2索引類型

2010-07-27 11:08:49

DB2數(shù)據(jù)移動

2009-07-06 17:34:26

遠(yuǎn)程復(fù)制DB2
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號