ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

H2数据库

2021-06-25 10:32:13  阅读:183  来源: 互联网

标签:lang 00 java H2 数据库 类型 对应


目录

H2支持的数据类型

INT类型:对应java.lang.Integer
REAL类型:对应java.lang.Float
DOUBLE类型:对应java.lang.Double
DECIMAL类型:对应java.math.BigDecimal,比如DECIMAL(20,2)
CHAR类型:对应java.lang.String,比如CHAR(10)
VARCHAR类型:对应java.lang.String
VARCHAR_IGNORECASE类型:对应java.lang.String,忽略大小写
BOOLEAN类型:对应java.lang.Boolean
TIME类型:对应java.sql.Time,当转换成java.sql.Date时,日期会设置成1970-01-01
DATE类型:对应java.sql.Date,格式为yyyy-MM-dd,其时间默认为00:00:00
TIMESTAMP类型:对应java.sql.Timestamp,格式为yyyy-MM-dd hh:mm:ss[.nnnnnnnnn],也支持java.util.Date
TINYINT类型:对应java.lang.Byte,-128 to 127
SMARTINT类型:对应java.lang.Short,-32768 to 32767
BIGINT类型:对应java.lang.Long
IDENTITY类型:自增类型,对应java.lang.Long,值范围-9223372036854775808 to 9223372036854775807
BINARY类型:二进制字节存储,最大不超过2GB,且完全保存在内存,比如BINARY(1000)
BLOB类型:对应java.sql.Blob,与BINARY相似,但针对很大的数据(如文件或图像),且不完全保存在内存,使用PreparedStatement.setBinaryStream来保存数据。
CLOB类型:与VARCHAR相似,但适用于保存很大的数据,且数据不完全保存在内存。用于任意尺寸的XML或HTML文档、文本文件等。使用PreparedStatement.setCharacterStream保存数据。
OTHER类型:对应java.lang.Object,用于存储序列化的Java对象,使用的是字节数组,客户端只能做序列化或反序列化,使用getObject反序列化,使用PreparedStatement.setObject存储数据。
UUID类型:对应java.util.UUID,128位的值,可以使用PreparedStatement.setBytes或setString或setObject(uuid)保存数据,使用ResultSet.getObject取回数据。
ARRAY类型:对应java.lang.Object[]

H2数据库常用的函数

CURRENT_DATE:取当前日期
CURRENT_TIME:取当前时间
CURRENT_TIMESTAMP:取当前日期时间
LOWER:字符串小写
UPPER:字符串大写
CONCAT:字符串连结
CHAR:ASCII值转字符
ASCII:字符转ASCII值
ENCRYPT:加密函数,支持AES算法,Block尺寸为16字节,
比如CALL ENCRYPT('AES', '00', STRINGTOUTF8('Test'))
DECRYPT:解密函数,支持AES算法,Block尺寸为16字节,
比如CALL TRIM(CHAR(0) FROM UTF8TOSTRING(
DECRYPT('AES', '00', '3fabb4de8f1ee2e97d7793bab2db1116')))
HASH:哈希函数,只支持SHA256算法,比如CALL HASH('SHA256', STRINGTOUTF8('Password'), 1000)
MAX:求最大
MIN:求最小
SUM:求和
CURRENT_USER:返回当前用户
H2VERSION:返回H2数据库的版本
DISK_SPACE_USED:返回表使用的磁盘空间尺寸,比如CALL DISK_SPACE_USED('my_table');
DATABASE_PATH:返回数据库文件的路径和数据库名,比如CALL DATABASE_PATH();

标签:lang,00,java,H2,数据库,类型,对应
来源: https://www.cnblogs.com/ymwmn/p/14929826.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有