在数据库中保存对象时,我收到以下错误:
2016-10-13 05:05:59.152 ERROR 4596 --- [nio-8090-exec-1] ohengine.jdbc.spi.SqlExceptionHelper:ORA-00932:不一致的数据类型:预期NUMBER得到了BINARY
2016-10-13 05:05:59.156 INFO 4596 --- [nio-8090-exec-1] o.h.e.j.b.internal.AbstractBatchImpl:HHH000010:在批量发布时它仍然包含JDBC语句 2016-10-13 05:05:59.184 ERROR 4596 --- [nio-8090-exec-1] oaccC [。[。[/]。[servletContainer]:servlet [servletContainer]的Servlet.service()与上下文path []抛出异常[org.springframework.dao.InvalidDataAccessResourceUsageException:无法执行语句; SQL [不适用];嵌套异常是org.hibernate.exception.SQLGrammarException:无法执行语句的根本原因
java.sql.SQLSyntaxErrorException:ORA-00932:不一致的数据类型:预期的NUMBER得到了BINARY
我的实体中有布尔字段,如下所示:
private Boolean isAccount;
private Boolean isEnabled;
在Oracle db中,这些字段'类型是数字。 当我使用JPA存储库保存时,使用下面的代码
Contact contact = new Contact();
contact.setIsAccount(false);
contact.setIsEnabled(false);
contactDao.save(contact);
抛出错误。 Oracle应该自动将Boolean转换为Number。那为什么我得到不一致的数据类型错误?有人建议吗?
感谢。