`

HyperSQL 2.0

 
阅读更多
HyperSQL 2.0于本月7日发布了。此次发布距HSQLDB 1.8的发布已有5年光阴了。HSQLDB 1.8已与很多工具、框架和应用实现了集成,包括使用广泛的OpenOffice 3.2产品套件,它为用户提供了一个嵌入式数据库,这样除了Microsoft Access之外,用户又多了一个选择。HyperSQL是用纯Java编写的,基于BSD许可。

相对于其他开源数据库引擎来说,新版本的HyperSQL引入了更多的特性。它首度加入了新的SQL功能、增强的可伸缩性、查询优化以及其他一些新特性。

HyperSQL的核心完全是多线程的,支持双向锁和MVCC(多版本并发控制),这两个手段都是为了解决对数据库资源的并发访问问题。其他数据库如PostgreSQL也使用了MVCC。除了已经支持的事务控制模式SERIALIZABLE和READ COMMITTED以外,HyperSQL 2.0还增加了对REPEATABLE READ和READ COMMITTED隔离级别的支持。

主要的组件(包括SQL探测器和解析器)都已经重写了,几乎完整支持ANSI-92 SQL和SQL:2003以及众多的SQL:2008特性(包括很多可选的扩展),现在已经支持很多新的表达式和结构,如BETWEEN字句、OVERLAPS谓词、多列IN表达式、MERGE语句和MATCHES谓词。此外,HyperSQL 2.0在SQL和Java语句中都支持完整的触发器定义语法以及只读和可更新视图。HyperSQL 2.0还增加了对SEQUENCE类型的支持以缓解唯一数生成器的负担。新的版本支持各种数据类型,包括BIT类型、CLOB、BLOB和SQL标准的INTERVAL类型,此外还增强了TIME支持,包含了带小数点的秒,同时也支持时区。HyperSQL 2.0增加了Array类型,并且可以通过该类型组合大多数其他的类型。此外,引擎还在JOIN字句、WHERE字句、IN查询和聚合函数如MIN、MAX和ORDER BY表达式中利用了索引。新版本支持存储过程和函数。存储过程语言还支持过程式接口,如WHILE循环、IF、CASE WHEN和异常处理语句以及聚合函数。这些函数可以在SQL和Java中定义。如果使用Java、那么还可以利用多态。

HyperSQL 2.0的一些小变化简化了管理和使用。新版本为常用类型增加了存储大小(最大为256GB),还增加了对BLOB和CLOB数据的支持,最高支持达64T的数据量。它更新了一个兼容于JDBC 4.0的驱动并增加了对Java 1.6的支持。值得关注的是,HyperSQL 2.0现在支持Statement和PreparedStatement接口的getGeneratedKeys()方法,这样就能更加轻松地使用ORM工具了。

总之,HyperSQL 2.0包含了大量的特性。实践证明,该项目非常适合于测试环境,同时也是一个不错的嵌入式数据库。HyperSQL似乎占据了大多数份额,但也面临着很多挑战,如由HyperSQL之前的创建者Thomas Mueller所开发的H2、Apache Derby(以前是IBM CloudScape),后者被引入到JDK 6当中,作为JavaDB。HyperSQL 2.0
分享到:
评论

相关推荐

    HyperSQL_User_Guide.pdf

    This documentation covers the latest HyperSQL version 2.0. This documentation is regularly improved and undated. The latest, updated version can be found at http://hsqldb.org/doc/2.0/ If you notice ...

    Hypersql的源码修改

    本资源是关于Hypersql的源码修改,我们的工作主要是添加了一些功能,实现了一句sql语句完成多操作和撤销功能

    HyperSQL-开源

    HyperSQL就像是用于SQL的doxygen加javadoc一样,将SQL视图,包,过程和函数映射到HTML源代码列表,并显示使用这些代码的所有代码位置。

    HSQLDB快速上手实录

    不跟你玩了~先介绍一下这个HSQLDB吧,传说是个纯java写的数据库,大名叫HyperSQL DB,不用安装不用部署,核心就一个jar文件,扔到工程里面开个jvm运行一下就行了,完全符合我想要的效果~这是我这两天研究的记录,...

    HyperSQL Database Engine (HSQLDB)-开源

    HSQLDB是一种用Java编写的关系数据库引擎,带有JDBC驱动程序,符合ANSI SQL:2016。 小型,快速,多线程的引擎和服务器,具有内存和磁盘表,LOB,事务隔离,多版本并发性和ACID。

    Tomcat Valve JDBC with HyperSQL-开源

    一个监控应用程序,它通过 Valve 注册到/来自 Tomcat 的每个 Http 请求和响应,并将信息存储到 HyperSql 数据库中。 一个监控工具,HyperSQL UI 显示请求和响应的信息。

    H2嵌入式数据库

    NULL 博文链接:https://18767136122.iteye.com/blog/1990947

    tutorial-connection-pooling:一个演示 DBCP(数据库连接池)的 Maven 项目

    连接池示例这是一个简单的 maven 项目,它利用来演示数据库连接池。 它连接到内存中的 HyperSql 数据库。

    hsqldb-2.3.2.zip

    HyperSQL是用Java编写的一款SQL关系数据库引擎 它的核心完全是多线程的 支持双向锁和MVCC 多版本并发控制 几乎完整支持ANSI 92 SQL 支持常见数据类型 最新版本增加了对BLOB和CLOB数据的支持 最高支持达64T的数据量 ...

    hsqldb-jpa:专为与关系数据库HSQLDB HyperSQL数据库提供JPA集成而设计的项目

    hsqldb-jpa ========== 该项目旨在提供与关系数据库HSQLDB HyperSQL数据库的JPA集成。 本示例使用Hibernate / JPA 4.x 列出待办事项: 建立其他关系

    HSQLDB用户手册

    HyperSQL User Guide HyperSQL Database Engine (HSQLDB) 2.2 hsqldb-2.2.9用户手册

    开源数据库软件hsqldb

    博文链接:https://newdebug.iteye.com/blog/80868

    嵌入式数据库测试源代码,生成数据库文件

    使用JPA测试嵌入式数据:H2 database,Apache derby database,HyperSQL database,Sqlite,且持久化数据

    parabank:Parasoft的ParaBank演示应用程序

    您必须关闭所有正在运行的ParaBank和HyperSQL实例,以使构建成功。 否则,一些测试可能会失败,因为在测试实例和真实对象之间共享许多端口。 请参阅。 Apache Tomcat笔记 建议使用Java 8或11 。

    hsqldb-1.8.0.7.jar

    HSQLDB(HyperSQL DataBase)是一个开放源代码的JAVA数据库,其具有标准的SQL语法和JAVA接口,它可以自由使用和分发,非常简洁和快速的

    hsqldb查看器

    HSQLDB(HyperSQL DataBase)是一个开放源代码的JAVA数据库,其具有标准的SQL语法和JAVA接口,它可以自由使用和分发,非常简洁和快速的。在其官网可以获得最新的程序源代码及jar包文件(当前版本为2.3.2)。

    hsqldb-snapshot-20150628

    这是HyperSQL数据库项目的分支。 HyperSQL是SourceForge上托管的一个Subversion项目。 我们将其用作面向行的数据库体系结构的模型。 目录: /base version 2.x /base-one versions up to 1.8.x /dotnet the .NET ...

    dbunitdatahandler100:AikiInc DbUnit 基本数据处理程序父项目

    aikiincutildatahandlersample - 演示使用 AikiInc 数据处理程序的应用程序,其中数据填充到 HyperSQL 或 MySQL 数据库. 在 Eclipse 中构建 我遇到的唯一问题是确保使用 JDK 而不是 JRE 1.7 在命令行 Maven 中构建 ...

    hadoop-mini-clusters

    Hadoop迷你集群 Hadoop迷你集群的集合 包括: HDFS-迷你HDFS群集 ... HyperSQL DB-用于测试各种数据库 测试: 包含测试以显示如何配置和使用每个小型集群。 使用: Maven Central-最新版本 < d

    FastPhotoTagger:设置照片元数据标签的快速方法-开源

    FastPhotoTagger试图成为设置照片中元数据的最快方法。... FastPhotoTagger使用ExifTool读取和写入元数据,使用HyperSQL管理其数据库,使用dcraw显示DNG和RAW,使用ImageMagick显示TIFF。 WEBP和HEIC。

Global site tag (gtag.js) - Google Analytics