oracle向gbase數據遷移須知


轉載自:https://www.modb.pro/db/33058

1.字符數據類型
1.1 CLOB類型
在ORACLE中用於存儲單字節字符的字符串大對象,支持各種定長、變長字符集。最大尺寸為4GB。
GBase 8a可替代的數據類型:
TEXT,但最大尺寸僅為32K。
1.2 LONG類型
保存可變長度的字符串大對象,最大尺寸為2GB。ORACLE推薦用CLOB或NCLOB類型替代該類型。
GBase 8a可替代的數據類型: TEXT,但最大尺寸為32KB。
1.3 NCHAR(length)類型
存儲固定長度的Unicode字符。在ORACLE中NATIONAL CHAR(length)、NATIONAL CHARACTER(length)是該類型的同義詞。最大尺寸為2000Bytes。
GBase 8a可替代的數據類型:
(1)當length的長度<=255字節時,可以使用GBase 8a的CHAR(size)替代(size<255)。
(2)當length大於255時,可以使用GBase 8a的VARCHAR(size)替代,size<32766。但這種類型為變長列類型。
1.4.NCLOB
用於存儲Unicode字符集的文本大對象,存儲變長字符集的數據(Unicode)。最大尺寸為4GB。
GBase 8a可替代的數據類型:
使用utf8字符集的TEXT,最大尺寸為32KB。
1.5 CHAR(length)
存儲固定長度的字符。在Oracle中存儲的是數據庫字符集的字符。是CHARACTER(length)的同義詞。最大尺寸2000Bytes。
GBase 8a可替代的數據類型:
(1)當length的長度<=255字節時,可以使用GBase 8a的CHAR(size)替代(size<255)。
(2)當length大於255時,可以使用GBase 8a的VARCHAR(size)替代,size<32766。但這種類型為變長列類型。
1.6 NVARCHAR2(length)
存儲變長字符的字符串,等於字符的長度,數據儲存在Unicode字符集中。最大長度4000bytes。同義詞有NATIONAL CHARACTER VARYING(length), NATIONAL CHAR VARYING(length), NCHAR VARYING(length)。
GBase 8a可替代的數據類型:
使用 utf8 字符集的VARCHAR(length)
1.7 VARCHAR2(length [BYTE | CHAR])
存儲變長字符集的字符串,可以按Byte或字符個數來定義長度。最大長度4000Bytes或字符數。同義詞有CHAR VARYING(length), CHARACTER VARYING(length), VARCHAR(length)。
GBase 8a可替代的數據類型:
VARCHAR(length)


2. 數字數據類型
2.1 BINARY_DOUBLE
存儲64位的浮點數。
GBase 8a可替代的數據類型:
DOUBLE PRECISION
2.2 BINARY_FLOAT
存儲32位的浮點數。
GBase 8a可替代的數據類型:FLOAT
2.3 NUMBER(p,s)
在一定的精度和范圍下存儲數字。精度(p)在1-38位10進制的數字,范圍(s)可以是 -84 到 127 。這個數字數據可以是任意的固點或浮點數字。如果 p或 s 被指定,那么這個數是一個經過處理的浮點數。如果傳入不正確的數字,可能會發生舍入錯誤。同義詞有 DECIMAL, DOUBLE PRECISION, FLOAT, INT, INTEGER, NUMERIC, REAL, SMALLINT。
GBase 8a可替代的數據類型:
DECIMAL(p,s)和INT族類型,在s不為0的情況下,替代為DECIMAL類型,在s為0的情況下,根據p的長度替代為INT族類型。
2.4 DECIMAL(p,s)
標准的 SQL 數據類型,是 Oracle NUMBER(p,s) 同義詞。GBase 8a可以使用 DECIMAL(p,s) 數據類型替代。
2.5 INT, INTEGER
標准的 SQL 數據類型,是 Oracle NUMBER(38) 同義詞。GBase 8a可以使用 INT, INTEGER 數據類型替代。但GBase 8a中int的最大字節為4字節。
2.6 NUMERIC(p,s)
標准的 SQL 數據類型,是 Oracle NUMBER(p,s) 同義詞。GBase 8a可以使用 NUMERIC(p,s) 數據類型替代。
2.7 REAL
標准的 SQL 數據類型,是 Oracle 64 位精度NUMBER 同義詞。GBase 8a可以使用DECIMAL(p,s)數據類型替代。
2.8 SMALLINT
標准的 SQL 數據類型,是 Oracle NUMBER(38) 同義詞。GBase 8a可以使用 SMALLINT 數據類型替代。


3. 時間類型
3.1 DATE
存儲日期和時間,范圍從公元前 4712 年 1月 1日 到公元 9999 年 12 月 31 日。
GBase 8a可替代的數據類型:
DATETIME,但要注意的是 GBase 8a 的時間范圍是從公元 1000 年 1 月 1 日 到 公元 9999 年 12 月 31 日。
3.2 TIMESTAMP[(precision)]
存儲日期值,包括年、月、天、小時、分、秒,precision 表示了秒字段的數字位數。precision 字段的范圍是 0 到 9 默認值是 6 。
GBase 8a可替代的數據類型:
TIMESTAMP,但要注意的是 GBase 8a 時間類型只精確到秒,其范圍是公元 1970 年 1 月 1 日 0時 0 分 1 秒到 公元 2038 年 01 月 19 日 03 時 14分 07 秒。

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM