Data Types
No. |
Oracle Database |
GaussDB |
Difference |
---|---|---|---|
1 |
NUMBER [ ( p [ , s ] ) ] |
Supported, with differences. |
The precision and usage are different.
|
2 |
FLOAT [ ( p ) ] |
Supported. |
- |
3 |
BINARY_FLOAT |
Not supported. |
- |
4 |
BINARY_DOUBLE |
Supported. |
- |
No. |
Oracle Database |
GaussDB |
Difference |
---|---|---|---|
1 |
DATE |
Supported, with differences. |
The precision is different. GaussDB supports a wider time range than Oracle Database. |
2 |
TIMESTAMP [ ( fractional_seconds_precision ) ] |
Supported, with differences. |
- |
3 |
TIMESTAMP [ ( fractional_seconds_precision ) ] WITH TIME ZONE |
Supported, with differences. |
The timestamptz type of GaussDB is equivalent to the timestampwithlocaltimezone type of Oracle Database. The type corresponding to timestamptz of Oracle Database is missing. Time zone update: In some countries or regions, the time zone information is often updated. Therefore, the database system often needs to modify the time zone file accordingly to ensure that the time is correct. Currently, the GaussDB time zone type involves only timestamp with timezone. When a new time zone file takes effect, the existing data is not changed, and the new data is adjusted based on the time zone file information. Data capabilities of GaussDB are different from those of Oracle Database. |
4 |
TIMESTAMP [ ( fractional_seconds_precision ) ] WITH LOCAL TIME ZONE |
Not supported. |
- |
5 |
INTERVAL YEAR [ ( year_precision ) ] TO MONTH |
Supported. |
- |
6 |
INTERVAL DAY [ ( day_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ] |
Supported. |
- |

- In A-compatible mode, the DATE type is replaced by TIMESTAMP(0) WITHOUT TIME ZONE. The differences between DATE and TIMESTAMP(0) WITHOUT TIME ZONE are the same.
- In terms of TIMESTAMP [ ( fractional_seconds_precision ) ] and TIMESTAMP [ ( fractional_seconds_precision ) ] WITH TIME ZONE, the differences between GaussDB and Oracle Database are as follows:
- The value of fractional_seconds_precision ranges from 0 to 6 in GaussDB, but ranges from 0 to 9 in Oracle Database.
- GaussDB uses DateStyle to set the display format of date and time values and the rules of resolving ambiguous values. For details, see "SQL Reference > Data Type > Date/Time Types" in Developer Guide. Generally, the input format verification and output display in Oracle Database are controlled by the NLS_TIMESTAMP_FORMAT and NLS_TIMESTAMP_TZ_FORMAT parameters.
- By default, GaussDB removes zeros from the end of the decimal part of the second. Oracle Database controls the display of the decimal part based on the setting (FF/FF1-FF9) of the formatting parameter. For example, '2017-09-01 10:32:19.212000' is displayed as '2017-09-01 10:32:19.212' in GaussDB. In Oracle Database, it is displayed as '2017-09-01 10:32:19.212' if the format parameter contains FF, or '2017-09-01 10:32:19.212000000' if the format parameter contains FF9.
- GaussDB supports a wider time range than Oracle Database.
No. |
Oracle Database |
GaussDB |
Difference |
---|---|---|---|
1 |
VARCHAR2 ( size [ BYTE | CHAR ] ) |
Supported, with differences. |
In GaussDB, the unit of size only supports BYTE and the option CHAR is not available. The maximum size is 10 MB. In Oracle Database, however, the unit of size can be selected between BYTE and CHAR. If MAX_STRING_SIZE is set to EXTENDED, the maximum size is 32767 bytes. If MAX_STRING_SIZE is set to STANDARD, the maximum size is 4000 bytes. The actual number of characters that can be contained depends on the character set in use. |
2 |
NVARCHAR2 ( size ) |
Supported, with differences. |
In GaussDB, the unit of size is bytes, and the maximum size is 10 MB. The actual number of characters that can be contained depends on the character set in use. In Oracle Database, when MAX_STRING_SIZE is set to EXTENDED, the maximum length is 32767 bytes. When MAX_STRING_SIZE is set to STANDARD, the maximum length is 4000 bytes. The actual number of characters that can be contained depends on the character set in use. |
3 |
CHAR [ ( size [ BYTE | CHAR ] ) ] |
Supported, with differences. |
In GaussDB, the unit of size only supports BYTE and the option CHAR is not available. The maximum size is 10 MB. In Oracle Database, however, the unit of size can be selected between BYTE and CHAR. The maximum size is 2000 bytes. The actual number of characters that can be contained depends on the character set in use. |
4 |
NCHAR [ ( size ) ] |
Supported, with differences. |
In GaussDB, the unit of size is bytes, and the maximum size is 10 MB. In Oracle Database, however, the unit of size is characters, and the maximum size is 2000 bytes. The actual number of characters that can be contained depends on the character set in use. |
5 |
CLOB |
Supported, with differences. |
Locators are not supported. |
6 |
NCLOB |
Not supported. |
- |
7 |
LONG |
Not supported. |
- |
No. |
Oracle Database |
GaussDB |
Difference |
---|---|---|---|
1 |
RAW ( size ) |
Supported, with differences. |
In GaussDB, size indicates the recommended byte length and is not used to verify the byte length of the input raw type. |
2 |
LONG RAW |
Not supported. |
- |
3 |
BLOB |
Supported. |
- |
4 |
BFILE |
Not supported. |
- |
No. |
Oracle Database |
GaussDB |
---|---|---|
1 |
ROWID |
Not supported. |
2 |
UROWID |
Not supported. |
No. |
Oracle Database |
GaussDB |
---|---|---|
1 |
Object types |
Not supported. |
2 |
REF data types |
Not supported. |
3 |
Variable arrays |
Supported. |
4 |
Nested tables |
Supported. |
No. |
Oracle Database |
GaussDB |
---|---|---|
1 |
anytype |
Not supported. |
2 |
anydata |
Not supported. |
3 |
anydataset |
Not supported. |
No. |
Oracle Database |
GaussDB |
Difference |
---|---|---|---|
1 |
XMLType |
Supported, with differences. |
GaussDB does not support some operations. For example, the XMLELEMENT function is used to convert a character string to the XML type instead of the XMLType type. For details, see "SQL Reference > Data Type > XMLType" in Developer Guide. |
2 |
URIType |
Not supported. |
- |
No. |
Oracle Database |
GaussDB |
---|---|---|
1 |
SDO_GEOMETRY |
Not supported. |
2 |
SDO_TOPO_GEOMETRY |
Not supported. |
3 |
SDO_GEORASTER |
Not supported. |
No. |
Oracle Database |
GaussDB |
---|---|---|
1 |
none |
- |
2 |
null |
AccessShare |
3 |
RS |
RowShare |
4 |
RX |
RowExclusive |
5 |
S |
ShareUpdateExclusive |
6 |
SRX |
Share |
7 |
- |
ShareRowExclusive |
8 |
X |
Exclusive |
9 |
- |
AccessExclusive |
10 |
- |
INVALID
NOTE:
INVALID of GaussDB indicates that an invalid lock is assigned. An invalid lock is assigned only when a lock that cannot be identified by GaussDB occurs during system running. |
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