3.3.1. 数据类型
统一SQL支持将mysql数据类型转换为其他数据库类型,转换后映射关系如下, 部分数据类型转换后存在差异,可以点击相应类型链接查看详情。具体支持数据类型边界可参考:BITAND
3.3.1.1. 数据类型转换映射表
序号 |
数据类型分类 |
MySQL 数据类型 |
转换后 GaussDB-Oracle 数据类型 |
---|---|---|---|
1 |
数字 |
int(n) |
int |
2 |
数字 |
tinyint(n) |
int |
3 |
数字 |
mediumint |
int |
4 |
数字 |
bigint(n) |
bigint |
5 |
数字 |
double |
doubll precision |
6 |
数字 |
double(p,s) |
decimal(p,s) |
7 |
数字 |
bool,boolean |
tinyint |
8 |
时间&日期 |
datetime[(n)] |
timestamp(n) |
9 |
字符 |
text(n) |
text |
10 |
字符 |
tinytext |
text |
11 |
字符 |
mediumtext |
text |
12 |
字符 |
longtext |
text |
13 |
字符 |
varchar(n) |
nvarchar2(3*n) 0<n<=16379 |
14 |
大对象 |
blob(n) |
bytea |
15 |
大对象 |
tinyblob |
bytea |
16 |
大对象 |
mediumblob |
bytea |
17 |
大对象 |
longblob |
bytea |
18 |
其他类型 |
varbinary(n) |
|
19 |
数字 |
signed |
警告
- 统一SQL转换时支持的精度标度范围如下(且p>=s):
精度范围(p):1~38
标度范围(s):0~38
在使用上述数据类型时,请确保数据类型精度标度范围在支持范围内。
对于目标库数据类型无法处理的数据长度,在运行时会报错。
signed数据类型仅在用于cast类型转换时,统一SQL支持转换为bigint 注:gaussdb jdbc驱动不支持cast中字符串数值转signed,例如cast(‘12.12’ as signed)。