Mapping Between Oracle and StarRocks Field Types
DataArts Migration converts the source field type to the destination field type based on the default rule, and creates tables and synchronizes data in real time.
Field Type Mapping Rules
The following table lists the field types supported by a job that migrates data from Oracle to StarRocks.
Type |
Oracle Data Type |
StarRocks Data Type |
Description |
---|---|---|---|
String |
CHAR(M) |
CHAR(M) |
Fixed-length string, filled with spaces |
NCHAR(M) |
CHAR(M) |
Fixed-length string, filled with spaces |
|
VARCHAR2(M) |
VARCHAR(M) |
Variable-length string |
|
NVARCHAR2(M) |
VARCHAR(M) |
Variable-length string |
|
ROWID |
STRING |
Variable-length string |
|
UROWID |
STRING |
Variable-length string |
|
Value |
NUMBER(M,D) |
DECIMAL(M,D)/STRING |
Accurate number with precision You can specify the StarRocks version by setting the targetVersion parameter in the advanced settings of the destination configuration. If targetVersion is greater than or equal to 1.18.0, the maximum value of M is 38. If targetVersion is less than 1.18.0, the maximum value of M is 27. If the value of M exceeds the maximum value, the STRING type is used. |
DECIMAL(M,D) |
DECIMAL(M,D)/STRING |
Equivalent to NUMBER |
|
NUMERIC(M,D) |
DECIMAL(M,D)/STRING |
Equivalent to NUMBER |
|
FLOAT |
DOUBLE/STRING |
If the value of M is greater than 53, the precision of Oracle FLOAT exceeds that of Doris DOUBLE. The STRING type is used. If the value of M is less than or equal to 53, the DOUBLE type is used. |
|
BINARY_FLOAT |
FLOAT |
Single-precision floating point number (4 bytes) |
|
BINARY_DOUBLE |
DOUBLE |
Double-precision floating point number (8 bytes) |
|
Date and time |
DATE |
DATETIME |
Date and time |
TIMESTAMP(M) |
DATETIME/STRING |
Date and time If the value of M is less than or equal to 6, the DATETIME type is used. If the value of M is greater than 6, the STRING type is used. |
|
TIMESTAMP(M) WITH TIME ZONE |
DATETIME/STRING |
Date and time If the value of M is less than or equal to 6, the DATETIME type is used. If the value of M is greater than 6, the TEXT type is used. |
|
TIMESTAMP(M) WITH LOCAL TIME ZONE |
DATETIME/STRING |
Date and time If the value of M is less than or equal to 6, the DATETIME type is used. If the value of M is greater than 6, the TEXT type is used. |
|
Binary |
BLOB |
VARCHAR(M) |
You can specify the StarRocks version by setting the targetVersion parameter in the advanced settings of the destination configuration. If the value of targetVersion is greater than or equal to 3.0.0, the data type is converted to VARBINARY, and the value of M is 1048576. If the value of targetVersion is less than 3.0.0 and greater than or equal to 2.1, the data type is converted to VARCHAR, and the value of M is 1048576. If the value of targetVersion is less than 2.1, the data type is converted to VARCHAR, and the value of M is 65533. |
CLOB |
VARCHAR(M) |
Same as BLOB |
|
NCLOB |
VARCHAR(M) |
Same as BLOB |
|
RAW |
VARCHAR(M) |
Same as BLOB |
|
LONG |
VARCHAR(M) |
Same as BLOB |
|
LONG RAW |
VARCHAR(M) |
Same as BLOB |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot