Java Derby上的Hibernate验证:列的列类型错误。已找到:双精度,应为:浮点型

Java Derby上的Hibernate验证:列的列类型错误。已找到:双精度,应为:浮点型,java,hibernate,hibernate-mapping,derby,Java,Hibernate,Hibernate Mapping,Derby,我正在开发一个java web应用程序,该应用程序应该可以同时使用MySQL数据库和嵌入式数据库(因此我们选择了Derby) 使用Derby运行时,在对模型进行hibernate验证时,我收到以下错误消息: Caused by: org.hibernate.HibernateException: Wrong column type in .ROOT.BATCH for column unitPrice. Found: real, expected: float 数据库中的列声明为FLOAT(1

我正在开发一个java web应用程序,该应用程序应该可以同时使用MySQL数据库和嵌入式数据库(因此我们选择了Derby)

使用Derby运行时,在对模型进行hibernate验证时,我收到以下错误消息:

Caused by: org.hibernate.HibernateException: Wrong column type in .ROOT.BATCH for column unitPrice. Found: real, expected: float
数据库中的列声明为FLOAT(12)

该属性声明为

private float unitPrice;

在Derby中,我试图用FLOAT和FLOAT(23)声明它,但得到了相同的错误。有什么想法吗?

改用hsqldb()为什么?有什么好处?可能重复的