首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 與 DB2/400 資料類型對應對照表與轉換指南

     編輯:Oracle 資料庫基礎

類型對應總表(一對多,需視實際情況選擇)

OracleDB2/400備註
DATEDATE, TIME, TIMESTAMPOracle DATE 含年月日時分秒;DB2 DATE 僅年月日,TIME 含時分秒。僅日期用 DATE,僅時間用 TIME,日期時間合用 TIMESTAMP。可用 TO_CHAR 拆分對應。
VARCHAR2(n), n≤4000CHAR(n), VARCHAR(n)n≤32766 用 CHAR/VARCHAR。
LONG, n≤2GBVARCHAR(n), CLOB(n)n≤32K 用 CHAR/VARCHAR;32K~2GB 用 CLOB。
RAW, LONG RAW, n≤255CHAR(n) FOR BIT DATA, VARCHAR(n) FOR BIT DATA
BLOB, n≤4GBBLOB(n)n≤2GB 用 BLOB。
CLOB, n≤4GBCLOB(n)n≤2GB 用 CLOB。
NCLOB, n≤4GBDBCLOB(n)n≤2GB 用 DBCLOB(n/2)。
NUMBERSMALLINT/INTEGER/BIGINT, DECIMAL(p,s), FLOAT/REAL/DOUBLE視精度、小數位、儲存空間選擇。NUMBER(p)→整數類型;NUMBER(p,s)→DECIMAL;無精度→FLOAT。

重點類型詳細說明

NUMBER 對應策略

Oracle NUMBER 儲存空間依定義而異(預設精度 38 位佔 20 bytes)。DB2 整數類型:SMALLINT 2B、INTEGER 4B、BIGINT 8B。對應時需兼顧精度與空間效率。

LOB 類型

Oracle BLOB/CLOB/NCLOB 上限 4GB;DB2 BLOB/CLOB 上限 2GB、DBCLOB 對應 NCLOB。Oracle BFILE 對應 DB2 DATALINK(外部檔案參考)。

ROWID

兩者皆有 ROWID 偽欄位唯一標識列。DB2 ROWID 佔 40 bytes,無 CCSID 屬性,不含檔案/區塊/列資訊。建表範例:

CREATE TABLE LIBRARYNAME/ORDERS2 (
  ORDERNO ROWID,
  SHIPPED_TO VARCHAR(36),
  ORDER_DATE DATE
);

插入時系統自動產生值,可用 Operations Navigator 檢視。

字元類型與中文編碼

DB2 CHAR/VARCHAR 對應 Oracle VARCHAR2(n) (n<4000)。小字串建議用定長 CHAR 提升效能;用 VARCHAR 時加 ALLOCATE 參數減少 I/O。中文儲存需指定 CCSID 935 (簡體) 或 937 (繁體)。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved