1
我在春天執行下面的查詢MVC JAVA錯誤:org.hibernate.exception.SQLGrammarException:無法提取ResultSet和dateAccessed不詳列
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)
我應該需要什麼所示的代碼改變?
我在第二行出現錯誤,並給出錯誤sal.dateAccessed是未知列。 – daisy
@daisy是行號2? – SachinSarawgi
@SachinSarawgi第二行是timePart =「sal.date在''+ previousFireTime +''和'」+ currentFireTime +「'和」;之間加入。 – daisy