【发布时间】:2016-12-26 10:44:41
【问题描述】:
我在 Spring MVC JAVA 中执行下面的查询
if (currentFireTime != null && previousFireTime != null) {
timePart = " sal.dateAccessed between '" + previousFireTime + "' and '" + currentFireTime + "' and ";
}
String queryString = " select count(*) as COUNT FROM LogData sal where " + timePart + " sal.userSigned = false and sal.batchMetaDataId = "+batchId;
SQLQuery sq =sessionFactory.getCurrentSession().createSQLQuery(queryString);
sq.addScalar("COUNT", IntegerType.INSTANCE);
sq.setResultTransformer(AliasToEntityMapResultTransformer.INSTANCE);
List<Map<String,Object>> resultSet=sq.list();
return (Integer)resultSet.get(0).get("COUNT");
当执行看起来像这样并将它放在 Mysql 中它工作正常。但我得到如下所示的错误。
select count(*) as COUNT FROM LogData sal where sal.dateAccessed between '2016-12-26 00:00:00.618' and '2016-12-26 01:00:00.618' and sal.userSigned = false and sal.batchMetaDataId = 86
显示错误
org.hibernate.exception.SQLGrammarException: could not extract ResultSet
at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:82)
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:125)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:110)
我需要在显示的代码中进行哪些更改?
【问题讨论】:
标签: java mysql spring hibernate