概述
数据类型转换问题经常出现在数据库迁移后应用程序适配过程中。以下为JAVA与DM数据库类型的映射关系:
序号 | JAVA类型 | DM |
1 | BIGDECIMAL | NUMBERNUMERICDECIMALDEC |
2 | STRING | CHARCHARACTERVARCHARVARCHAR2LONGVARCHAR |
3 | BOOLEAN | BIT |
4 | INTEGER | INTEGERINT |
5 | LONG | BIGINT |
6 | BYTE | TINYINTBYTE |
7 | SHORT | SMALLINT |
8 | byte[] | BINARYVARBINARY |
9 | DOUBLE | FLOATDOUBLEDOUBLE PRECISION |
10 | FLOAT | REAL |
11 | DATE | DATE |
12 | TIMESTAMP | TIMESTAMPDATETIME |
13 | TIME | TIMESTAMP |
14 | DmdbTimestamp | TIME WITH TIME ZONE |
15 | DmdbNClob | TEXTCLOB |
16 | DmdbBlob | BLOB |
1、JAVA-BIGDECIMAL
java.math.BigDecimal是Java中提供的大数字(超过16位有效位)的操作类,用于高精度计算,针对大小数的处理类。在对数字精度要求较高的场景,建议使用BigDecimal 类,它支持任何精度的定点数,可以用它来精确计算货币值等。
在DM数据库中,NUMBERNUMERICDECIMALDEC这四种数据类型均对应到BIGDECIMAL。
精确数值数据类型 NUMBERNUMERICDECIMALDEC:精度范围是 1 至 38,如果其值超过精度, DM 会返回一个出错信息,如果超过标度,则多余的位会被截断。
2、JAVA-STRING
字符数据类型 CHARCHARACTER:指定定长字符串。在基表中,定义 CHAR 类型的列时,其最大存储长度由数据库页面大小决定,如果未指定长度,缺省为 1。
字符数据类型 VARCHARVARCHAR2:在基表中,当没有指定 USING LONG ROW 存储选项时, 插入 VARCHAR 数据类型的实际最大存储 长度由数据库页面大小决定。如果指定了 USING LONG ROW 存储选项,则插入 VARCHAR 数据类型的长度不受数据库页面大小限制,为 32767
多媒体数据类型字符串 LONGVARCHAR:TEXT 为变长字符串类型。其字符串的长度最大为 2G-1 。 DM 利用它存储长的文本串。
3、JAVA-BOOLEAN
位串数据类型 BIT:用于存储整数数据 1 、 0 或 NULL ,只有 0 才转换为假,其他非空、非0 值都会自动转换为真
4、JAVA-INTEGER
整型 INTEGERINT:用于存储有符号整数,精度为 10 ,标度为 0 。取值范围为: -2147483648 ~+2147483647。
5、JAVA-LONG
长整型 BIGINT:用于存储有符号整数精度为 19 ,标度为 0 。取值范围为:-9223372036854775808~+9223372036854775807
6、JAVA-BYTE
TINYINTBYTE:用于存储有符号整数,精度为3 ,标度为 0 。取值范围为: -128 ~+127 。
7、JAVA-SHORT
SMALLINT:用于存储有符号整数,精度为5 ,标度为 0 。取值范围为: -32768~+32767。
8、JAVA-byte[] byte数组
BINARY:用来存储定长二进制数据。缺省长度为 1 个字节。最大长度由数据库页面大小决定。
VARBINARY:用来存储变长二进制数据。
9、JAVA-DOUBLE
近似数值数据类型 FLOATDOUBLEDOUBLE PRECISION:二进制精度的浮点数。 精度值设置用于保证数据移植的兼容性,实际精度在达梦内部是固定的。精度处于范围( 1~126 )时忽略精度,超过此范围直接报错。取值范围
10、JAVA-FLOAT
近似数值数据类型 REAL:是带二进制精度的浮点数,但它不能由用户指定使用的精度,系统指定其二进制精度为 24 ,十进制精度为 7 。取值范围
11、JAVA-DATE
一般日期时间数据类型 DATE:包括年、月、日信息,定义了 '4712-01-01' 和 '9999-12-31' 之间任何一个有效的格里高利日期。
12、JAVA-TIMESTAMP
一般日期时间数据类型 TIMESTAMPDATETIME:包括年、月、日、时、分、秒信息,定义了一个在 '4712-01-01 00:00:00.000000' 和 '9999-12-31 23:59:59.999999' 之间的有效格里高利日期时间。
最后
以上就是眯眯眼蜜蜂为你收集整理的JAVA数据类型对应DM数据库类型的全部内容,希望文章能够帮你解决JAVA数据类型对应DM数据库类型所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复