`

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

    此文档为HyperSQL用户指南,覆盖了最新版本2.0的相关内容,并且该文档会定期更新和完善。如果在使用过程中发现任何错误或遇到问题,可以通过HSQLDB的支持设施进行反馈,这些支持资源可以在官方网站...

    HSQLDB 用户指南

    该指南详细介绍了HSQLDB 2.0版本的使用方法,涵盖了运行环境配置、数据访问、SQL语言支持、会话与事务管理、模式与数据库对象定义等多个方面。 二、运行与使用HyperSQL HSQLDB主要通过JAR包形式提供,用户可以通过...

    botdetect依赖包

    这是HyperSQL数据库(HSQLDB)的JAR文件,它是一个轻量级、纯Java关系型数据库引擎。HSQLDB常被用作开发测试环境或嵌入式应用的数据存储,因为它的体积小、速度快。在BotDetect的场景中,可能用于存储和管理检测到...

    Hsqldb.jar

    HSQLDB(HyperSQL Database)是一个轻量级、高性能的SQL关系型数据库,它完全用Java编写,适用于各种环境,包括嵌入式、服务器和Web应用。而`hsqldb.jar`则是HSQLDB数据库引擎的核心库,它包含了运行和管理HSQLDB...

    hsqldb 2.25

    HSQldb,全称为HyperSQL Database,是一款开源、轻量级、嵌入式的关系型数据库管理系统。它支持标准的SQL语法,包括SQL-92和SQL:2003,且在Java环境中运行,无需依赖外部操作系统服务。HSQldb因其小巧、高效以及对...

    HSQLDB 1.8.0

    HSQLDB,全称为HyperSQL Database,是一款开源、轻量级、高性能的关系型数据库管理系统,广泛应用于嵌入式系统和测试环境。HSQLDB 1.8.0是该数据库引擎的一个重要版本,它在功能、稳定性和性能上都有显著提升,为...

    HSQLDB数据库

    HSQLDB(HyperSQL Database)是一个开源的关系型数据库管理系统,因其轻量级、高性能和易用性而受到广大开发者的欢迎。这个数据库引擎支持多种运行模式,包括单用户模式、内存模式、文件模式以及服务器模式,适用于...

Global site tag (gtag.js) - Google Analytics