程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> Oracle與DB2的數據類型說明(1)

Oracle與DB2的數據類型說明(1)

編輯:DB2教程

本文為您介紹了Oracle和DB2的數據類型,並進行了詳細的說明,需要說明的是,Oracle中的DATE含有年、月、日、時、分、秒,它和DB2/400中的DATE不相互對應,DB2/400中的DATE只有年、月、日,TIME類型含有時、分、秒,因此日期和時間類型要進行轉換。

首先,通過下表介紹與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類型所占用的存


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved