【问题标题】:H2 Database error Unknown data type INTERVALH2 数据库错误 未知数据类型 INTERVAL
【发布时间】:2019-11-01 15:42:02
【问题描述】:

我正在为一个 JPA 项目进行集成测试。测试在嵌入式 h2 数据库上运行。但是,当我使用

时,我在休眠模式生成期间收到来自 h2 的错误
@Column(columnDefinition = "INTERVAL HOUR TO MINUTE")

错误是 org.h2.jdbc.JdbcSQLException: Unknown data type: "INTERVAL";

h2 文档表明支持 INTERVAL:

http://www.h2database.com/html/datatypes.html#interval_type

我使用的是 h2 版本 1.4.197

离开 JPA 并直接在 h2 控制台中工作,我尝试了以下脚本,该脚本也会生成未知数据类型错误:

CREATE TABLE test_interval (id INTEGER, test_hours INTERVAL HOUR TO MINUTE);

我尝试过 INTERVAL 类型的其他变体,所有这些变体都会产生相同的错误

我在任何地方都找不到任何关于这个问题的讨论。

【问题讨论】:

    标签: sql jdbc h2


    【解决方案1】:

    您需要使用更新版本的 H2。 H2 从 1.4.198 开始支持标准的INTERVAL 数据类型,但 1.4.198 是 beta 质量版本,请使用更新的版本,例如 1.4.199 或 1.4.200。

    在线文档仅适用于最新版本,当前为 1.4.200。如果您使用一些旧版本,则必须使用其发行版中的文档。

    【讨论】:

    • 哇,真的吗?我想我的错误是假设如此广泛使用的库使用语义版本编号。如果没有这些,那么文档可能应该提供更多关于何时实施新功能的信息。
    • H2 从来没有语义版本,版本只是按顺序命名。
    猜你喜欢
    • 2020-03-29
    • 2016-03-02
    • 1970-01-01
    • 2019-10-06
    • 2013-10-19
    • 1970-01-01
    • 2019-01-22
    • 1970-01-01
    • 2018-06-04
    相关资源
    最近更新 更多