3

什么 postgres 列类型将映射到基于休眠的列中的 Java Float 类型?

我的旧 postgres 数据库中有 float(19),但如果启用了休眠模式验证,我会收到此错误消息。

Wrong column type in realtorprint.templatetype for column height.
Found: float8, expected: float4

有任何想法吗?我的专栏是 float(8) 而不是 float(19) 我可能可以在我们的旧数据库中进行更改。

4

1 回答 1

7

hibernate 如何将 Java 类型映射到 SQL 类型由与 RDBMS 对应的Dialect子类控制。您使用哪一个可能取决于您的 Hibernate 和 Postgres 版本。

但我怀疑在大多数情况下,Java float 映射到 float(4),Java double 映射到 float(8)。

这是开源的,您可以获得代码并检查以确定您的情况发生了什么。

您也可以通过配置替换您自己的方言,尽管它很少适合。(它偶尔适用于错误修复。)

于 2013-01-11T23:22:31.977 回答