【发布时间】:2017-08-22 22:59:43
【问题描述】:
对于 H2 数据库架构 映射到具有 UUID 的实体,Hibernate ddl 验证失败,异常强>:
根本原因:org.hibernate.tool.schema.spi.SchemaManagementException: 模式验证:列 [testuuid] 中遇到错误的列类型 在表中 [
TEST.dummy];找到 [varbinary (Types#VARBINARY)],但是 期待 [二进制 (Types#BINARY)]
设置:
- 休眠 5.2.9.Final
- H2 1.4.194
更多休眠设置:
- hibernate.hbm2ddl.auto=validate
- 数据库方言未明确设置。
H2 DDL 最初是使用 hibernate 生成的,导致 UUID 在 H2 数据库架构中由“二进制”表示。
禁用验证有效,但不是一个选项。
我该如何解决这个问题?
【问题讨论】: