TDSQL PostgreSQL版 SQL 数据类型

TDSQL PG 数据库的 Oracle 兼容模式与原生 Oracle 数据库中 SQL 数据类型的兼容对比信息。我们把 Oracle 数据库的数据类型大体分为几类,以下简单说明与 TDSQL PG 中数据类型的差异。

相关产品
TDSQL PostgreSQL版 产品页,含版本规格、价格与购买入口。

·字符类型,包括:

Oracle 数据类型 TDSQL PG 数据库是否支持 说明
CHAR [(size [BYTE | CHAR])] 支持 固定字符长度的字符类型,TDSQL PG 目前仅支持指定 size 为 CHAR(字符长度)。
NCHAR[(size)] 支持 固定字符长度的字符类型,TDSQL PG 目前不区分 UNICODE 字符和非 UNICODE 字符。
VARCHAR2(size [BYTE | CHAR]) 支持 可变字节长度的字符类型,TDSQL PG 目前仅支持指定 size 为 BYTE(字节长度)。
NVARCHAR2(size) 支持 可变字符长度的字符类型,TDSQL PG 目前不区分 UNICODE 字符和非 UNICODE 字符。
LONG 支持 可变长度的字符类型,oracle 已废弃,仅供兼容历史版本使用。

·数字类型,包括:

Oracle 数据类型 TDSQL PG 数据库是否支持 说明
NUMBER[(p[,s])] 支持 精度为 p 并且数值范围为 s 的数字类型,底层为 TDSQL PG 中的 NUMERIC
FLOAT[(p)] 支持 精度为 p 的浮点型,底层为 TDSQL PG 中的 NUMERIC
BINARY_FLOAT 支持 浮点型,底层为 TDSQL PG 中的 NUMERIC
BINARY_DOUBLE 支持 浮点型,底层为 TDSQL PG 中的 NUMERIC

·时间类型,包括:

Oracle 数据类型 TDSQL PG 数据库是否支持 说明
DATE 支持 时间类型,显示格式取决于 NLS_DATE_FORMAT 格式
TIMESTAMP [(fractional_seconds_precision)] 支持 时间戳类型,fractional_seconds_precision 表示其中秒的小数位数
TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE 支持 带时区的时间戳类型,fractional_seconds_precision 同 TIMESTAMP
TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE 支持 带本地时区的时间戳,fractional_seconds_precision 同 TIMESTAMP
INTERVAL YEAR [(year_precision)] TO MONTH 支持 包含年、月的时间间隔类型,year_precision 是年的数字位数
INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)] 支持 包含天、小时、分钟、秒的时间间隔类型,day_precision 表示天的数字位数,fractional_seconds_precision 同 TIMESTAMP

·RAW 和 LONG RAW 类型

Oracle 数据类型 TDSQL PG 数据库是否支持 说明
RAW(size) 支持 可变字节长度的二进制数据类型
LONG RAW(size) 支持 可变字节长度的二进制数据类型

·大对象类型,包括:

Oracle 数据类型 TDSQL PG 数据库是否支持 说明
BFILE 支持 外部二进制文件类型
BLOB 支持 二进制大对象
CLOB 支持 字符大对象
NCLOB 支持 同 CLOB,TDSQL PG 目前不区分 UNICODE 字符和非 UNICODE 字符。

·ROWID 和 UROWID 类型

Oracle 数据类型 TDSQL PG 数据库是否支持 说明
ROWID 支持 行标识符,可以唯一标识表中的一行。
UROWID 支持 同 ROWID

·XMLTYPE 类型

Oracle 数据类型 TDSQL PG 数据库是否支持 说明
XMLTYPE 支持 用于存储 XML 数据格式的类型

目前上述的 Oracle 数据类型,除了说明中标出的不同的地方,其他的地方 TDSQL PG 和 Oracle 完全相同的使用方法,更加详细的说明可以参考 Oracle 的产品文档。

赞 (0)
上一篇 4天前
下一篇 4天前