Topik ini menjelaskan pasangan tipe data yang didukung selama migrasi data dari database Oracle ke tenant Oracle di OceanBase Database.
Tipe data yang didukung
Oracle Database | Tenant Oracle di OceanBase Database | Deskripsi |
INTEGER | NUMBER(38,0) | |
INT | NUMBER(38,0) | |
SMALLINT | NUMBER(38,0) | |
BINARY_FLOAT | BINARY_FLOAT | Bilangan titik mengambang dengan presisi biner. Ini adalah tipe data bilangan titik mengambang dengan presisi tunggal 32-bit. Tipe data ini konsisten di database Oracle dan tenant Oracle di OceanBase Database. |
BINARY_DOUBLE | BINARY_DOUBLE | Bilangan titik mengambang dengan presisi biner. Ini adalah tipe data bilangan titik mengambang dengan presisi ganda 64-bit. Tipe data ini konsisten di database Oracle dan tenant Oracle di OceanBase Database. |
DECIMAL(p,s) | NUMBER(p,s) | |
DEC(p,s) | NUMBER(p,s) | |
NUMERIC(p,s) | NUMBER(p,s) | |
REAL(p,s) | NUMBER(p,s) | |
FLOAT (p) | FLOAT (p) | Sub-tipe dari tipe data NUMBER. Rentang presisi biner: [1,126]. FLOAT tidak menunjukkan bilangan titik mengambang. Tipe data ini konsisten di database Oracle dan tenant Oracle di OceanBase Database. |
NUMBER[(p,s)] | NUMBER(p,s) | Di tenant Oracle di OceanBase Database, tipe data ini menyimpan angka titik tetap panjang variabel dengan presisi desimal atau bilangan titik mengambang. Saat menjadi tipe data bilangan titik mengambang, tipe data NUMBER tidak mencakup parameter p dan s. Di database Oracle, p berkisar dari 1 hingga 38, dan s berkisar dari -84 hingga 127. |
NCHAR(size) | NCHAR(size) | Rentang nilai parameter size adalah [1, 2000]. Nilai default dan minimum adalah 1. Ukuran penyimpanan adalah dua kali ukuran byte. |
CHAR (size [BYTE | CHAR]) | CHAR (size [BYTE | CHAR]) | Rentang nilai parameter size adalah [1, 2000]. Nilai default dan minimum adalah 1. Ukuran penyimpanan adalah size byte atau karakter. |
CHARACTER(n) | CHAR(n) | |
NVARCHAR2(size) | NVARCHAR2(size) | Rentang nilai parameter size adalah [1, 32767]. Ukuran penyimpanan byte adalah dua kali jumlah karakter yang dimasukkan. |
VARCHAR2(size [BYTE | CHAR]) | VARCHAR2(size [BYTE | CHAR]) | Rentang nilai parameter size adalah [1, 32767]. Ukuran penyimpanan adalah panjang aktual byte atau karakter yang dimasukkan, bukan size byte atau karakter. |
VARCHAR(size) | VARCHAR2(size) | |
RAW(size) | RAW(size) | Di tenant Oracle di OceanBase Database, tipe data ini menyimpan data dalam byte. Panjang maksimum kolom RAW adalah 2.000 byte. Variabel PL RAW dapat menampung hingga 32.767 byte data. Di database Oracle, kolom database RAW dapat menampung hingga 2.000 byte data. |
LONG | CLOB | Di tenant Oracle di OceanBase Database, CLOB menyimpan hingga 48 MB data. Di database Oracle, panjang maksimum nilai LONG adalah hingga 2^31 - 1 byte atau 2 gigabyte. |
LONG RAW | BLOB | Di tenant Oracle di OceanBase Database, BLOB menyimpan hingga 48 MB data biner. Di database Oracle, panjang maksimum nilai LONG RAW adalah hingga 2^31 - 1 byte atau 2 gigabyte. |
ROWID | ROWID | Alamat unik baris dalam tabel, yang direpresentasikan sebagai string Base64. |
UROWID | UROWID | Alamat logis baris dalam tabel terorganisasi indeks, yang direpresentasikan sebagai string Base64. |
TIMESTAMP (fractional_seconds_precision) | TIMESTAMP (fractional_seconds_precision) | Di tenant Oracle di OceanBase Database, presisi dan rentang ditentukan oleh nilai parameter skala. Rentang nilai: [0,9]. Nilai default: 6. Nilai minimum 0 menunjukkan bahwa timestamp akurat hingga detik, nilai maksimum 9 menunjukkan bahwa timestamp akurat hingga nanodetik, dan nilai default 6 menunjukkan bahwa timestamp akurat hingga mikrodetik. Di database Oracle, ukurannya adalah 7 atau 11 byte, tergantung pada presisi. |
TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE | TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE | Di tenant Oracle di OceanBase Database, presisi dan rentang ditentukan oleh nilai parameter skala. Rentang nilai: [0,9]. Nilai default: 6. Nilai minimum 0 menunjukkan bahwa timestamp akurat hingga detik, nilai maksimum 9 menunjukkan bahwa timestamp akurat hingga nanodetik, dan nilai default 6 menunjukkan bahwa timestamp akurat hingga mikrodetik. Di database Oracle, ukurannya tetap 13 byte. |
TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE | TIMESTAMP[(fractional_seconds_precision)] WITH LOCAL TIME ZONE | |
DATE | DATE | Di tenant Oracle di OceanBase Database, rentang nilai adalah [0001-01-01 00:00:00, 9999-12-31 23:59:59]. Di database Oracle, rentang tanggal valid adalah [1 Januari 4712 SM, 31 Desember 9999 M]. Ukurannya tetap 7 byte. |
INTERVAL YEAR [(year_precision)] TO MONTH | INTERVAL YEAR [(year_precision)] TO MONTH | 5 byte |
INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)] | INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)] | 11 byte |
BLOB | BLOB | |
CLOB | CLOB | |
NCLOB | CLOB |
Tipe data yang tidak didukung
Oracle Database | Tenant Oracle di OceanBase Database |
TIMESTAMP_UNCONSTRAINED | - |
TIMESTAMP_TZ_UNCONSTRAINED | - |
TIMESTAMP_LTZ_UNCONSTRAINED | - |
YMINTERVAL_UNCONSTRAINED | - |
DSINTERVAL_UNCONSTRAINED | - |
YEAR | - |
MONTH | - |
DAY | - |
HOUR | - |
MINUTE | - |
SECOND | - |
TIMEZONE_HOUR | - |
TIMEZONE_MINUTE | - |
TIMEZONE_REGION | - |
TIMEZONE_ABBR | - |