因项目需要适配国产数据库,网上资料太少,自己整理了一下几个国产数据类常用数据类型,后续会记录一些适配遇到的问题,方便日后查看,也希望给同样遭遇的小伙伴一点点参考
1 Gbase8s数据库
分类 |
数据类型 |
说明 |
范围 |
数值型 |
INT/INTEGER |
整数 |
-2,147,483,647 至 2,147,483,647 |
DECIMAL(p,s) |
存储实数的定点小数值 |
在小数部分中最多 20 位有效数字,或在小数点的左边最多 32 位有效数字。 |
|
NUMERIC(p,s) |
DECIMAL(p,s) 的符合 ANSI 的同义词 |
p最大精度是38位(十进制) |
|
FLOAT |
双精度浮点数值 |
存储最多带有 16 位有效数字的双精度浮点数值 |
|
SERIAL |
存储数据库服务器生成的 4 字节正整数 |
从 1 至 2,147,483,647 默认从1开始,可以设置初始值serial(n) |
|
MONEY(p,s) |
定点货币值 |
数据自带货币符号 |
|
时间类型 |
DATE |
YYYY-MM-DD |
1 年 1 月 1 日直至 9999 年 12 月 31 日 |
DATETIME |
(年、月、日)和每日时间(小时、分、秒和几分之一秒) |
1 年至 9999 年 |
|
字符串类型 |
CHAR |
定长字符串 |
0-32767字节 |
NCHAR |
定长度符串 |
0-32,767字节 |
|
VARCHAR |
变长字符串 |
0-255 字节 |
|
LVARCHAR |
可变长字符串 |
0-32,739 字节 |
|
NVARCHAR |
变长字符串 |
0-255字节 |
|
大对象 |
TEXT |
文本数据 |
0-2^31字节 |
BYTE |
任何数字化数据 |
0-2^31字节 |
|
BLOB |
二进制数据 |
4 TB(4*2^40字节) |
|
CLOB |
文本数据 |
4 TB(4*2^40 字节) |
|
其他 |
BOOLEAN |
可存储 true、false 或 NULL 值的内建的 opaque 数据类型 |
|
2 Oscar(神通)数据库
分类 |
数据类型 |
说明 |
范围 |
数值型 |
TINYINT |
固定精度 |
-128 到 127
|
INT INTEGER INT4 |
固定精度 |
-2^31 到 2^31-1 |
|
NUMERIC |
固定精度和小数位的数字数据 |
最大精度 p 为 1000,s 则可在 0-p 之 间变化 |
|
DOUBLE PRECISION
|
浮点精度数字
|
2.22507385850720e-308 到 1.79769313486231e+308]
|
|
FLOAT(n), 1<=n<=24 |
指定低精度浮点精度
|
15 位十进制数字精度
|
|
FLOAT 24<=n<=53 |
指定低精度浮点精度 |
|
|
DECIMAL |
固定精度和小数位的 数字数据 |
最大精度 p 为 1000,s 则可在 0-p 之 间变化
|
|
SERIAL |
自增整数 |
1 到 +2147483647
|
|
时间类型 |
DATE |
日期 |
4714-11-24 BC -9999-12-31AD
|
TIME |
时间 |
00:00:00 -23:59:59.999999
|
|
TIMESTAMP |
时间戳 |
4714-11-24 00:00:00 BC -9999-12-31 23:59:59.999999 AD
|
|
字符串类型 |
CHAR |
定长字符串 |
0-8000字节 |
VARCHAR |
变长字符串 |
0-8000 字节 |
|
TEXT |
可变长度的字符数据
|
0-8000 字节 |
|
大对象 |
BLOB |
大数据量二进制数据 |
0-4G |
CLOB |
大数据量字符串数据 |
0-4G |
|
二进制字符串 |
BINARY(n)
|
定长的二进制字串
|
最大长度为8000 字节
|
|
VARBINARY(n)
|
变长的二进制字串
|
最大长度为 8000 字节
|
其他 |
BOOLEAN BOOL |
布尔值 |
TRUE(T),FALSE(F) |
3 GaussDb100(华为高斯)数据库
分类 |
数据类型 |
说明 |
范围 |
数值型 |
INTEGER |
存储32位有符号整数
|
-2^31 ~ 2^31 -1
|
BIGINT
|
存储64位有符号整数
|
-2^63 ~ 2^63 -1
|
|
DOUBLE
|
存储64位的双精度浮点数 |
[-1.79E+308, +1.79E+308]
|
|
FLOAT |
单精度浮点数 |
[-1.79E+308, +1.79E+308]
|
|
DECIMAL/NUMBER
|
存储高精度浮点数 |
(-1.0E128, 1.0E128)
|
|
时间类型 |
DATE/DATETIME
|
YYYY-MM-DD HH24:MI:SS |
[0001-01-01 00:00:00,9999-12-31 23:59:59]
|
TIMESTAMP |
YYYY-MM-DD HH24:MI:SS.FF6 |
[0001-01-01 00:00:00.000000,9999-12-31 23:59:59.999999]
|
|
字符串类型 |
CHAR |
定长字符串 |
0-8000 |
NCHAR |
用于存储定长字符串 |
0-8000 |
|
CLOB |
存储大对象变长字符串 |
0-4G |
|
VARCHAR |
变长字符串 |
0-8000 字节 |
|
NVARCHAR |
存储大对象变长字符串 |
0-8000 字节 |
|
二进制类型 |
BLOB |
存储变长大对象二进制数据
|
0-4G |
BINARY |
存储定长的二进制数据
|
0-8000字节 |
|
VARBINARY |
存储变长的二进制数据 |
0-8000字节 |
|
其他 |
BOOLEAN BOOL |
布尔值 |
TRUE(T),FALSE(F)
|
4 DM数据库
分类 |
数据类型 |
说明 |
范围 |
数值型 |
INTEGER |
存储32位有符号整数
|
-2^31 ~ 2^31 -1
|
DECIMAL/DEC
|
与 NUMERIC 相似。
|
|
|
DOUBLE PRECISION
|
存储64位的双精度浮点数 |
二进制精度为 53,十进制精度为 15取值范围-1.7E + 308 ~ 1.7E + 308 |
|
FLOAT |
带二进制精度的浮点数
|
-1.7E + 308 ~ 1.7E + 308 |
|
NUMBER/NUMERIC |
存储高精度浮点数 |
精度范围是 1 至 38,标度定义了小数点右边的数字位数,默认是 16
精度,则默认是 16
|
|
时间类型 |
DATE |
日期 |
-4712-01-01-9999-12-31
|
TIME
|
时间 |
00:00:00.000000-23:59:59.999999
|
|
TIMESTAMP/DATETIME |
YYYY-MM-DD HH24:MI:SS.FF6 |
-4712-01-0100:00:00.000000- 9999-12-31 23:59:59.999999 |
|
字符串类型 |
CHAR |
定长字符串 |
最大长度由数据库页面大小决定 |
CLOB |
存储大对象变长字符串 |
0-2G-1 |
|
VARCHAR |
变长字符串 |
最大长度由数据库页面大小决定 |
|
TEXT/LONGVARCHAR |
变长字符串类型 |
0-2G-1 |
|
二进制类型 |
BLOB |
存储变长大对象二进制数据
|
0-2G-1 |
BINARY |
存储定长的二进制数据
|
最大长度由数据库页面大小决定
|
|
VARBINARY |
存储变长的二进制数据 |
最大长度由数据库页面大小决定
|
|
其他 |
BOOLEAN BOOL |
布尔值 |
返回值为 0 或 1 |
来源:CSDN
作者:lmfxiaohuo
链接:https://blog.csdn.net/lmfxiaohuo/article/details/104036786