私はこのコードを試しました:
List resultList = new ArrayList();
Criteria criteria = createCriteria(SystemLogFile.class);
criteria.add(Expression.eq("clientId", clientId));
criteria.addOrder(Order.desc("systemLogFileId"));
if (page == -1) {
resultList.add(criteria.setProjection(Projections.rowCount()).uniqueResult());
} else {
criteria.setFirstResult(page * pageSize);
criteria.setMaxResults(pageSize);
resultList = criteria.list();
setModelsListAsLoaded(resultList);
}
return resultList;
このコードは、次のクエリを生成します。
select count(*) as y0_ from krn_system_log_file this_ where this_.CLIENT_ID=? order by this_.SYSTEM_LOG_FILE_ID desc
これは oracle と mysql では機能しますが、db2 では機能しません! 次のエラー メッセージが表示されます: 原因: com.ibm.db2.jcc.am.io: DB2 SQL エラー: SQLCODE=-119、SQLSTATE=42803、SQLERRMC=SYSTEM_LOG_FILE_ID、DRIVER=3.57.82