1
Restrictions.in .. 사용시 최대 절전 기준에 문제가 있습니다. 제한에 보낸 목록에 값이 없으면 쿼리가 표시 될 것이므로 예상되는 SQL GrammerException을 throw합니다HIbernate Criteria Restrictions.in
사람의 페이지에서선택 * 경우 최대 절전 모드 로그에()
오류 p.id ---
com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near ')'. at
com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError
SQLServerException.java:197)
ERR 같은 또는 원인이되는 봄 로그 ...
org.hibernate.exception.SQLGrammarException: could not execute query
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:92
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
org.hibernate.loader.Loader.doList(Loader.java:2536)
org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2276
org.hibernate.loader.Loader.list(Loader.java:2271
org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:119
org.hibernate.impl.SessionImpl.list(SessionImpl.java:1716
org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:347)
그리고 코드는
criteria.add(Restrictions.in("id", idList));
내가이 일을 시도
이지만, 완전히 반대되는 테이블에서 모든 값을 반환합니다 목록의 크기가 0 내가 쿼리로부터 결과를 얻을 수 있도록 목록에서 모든 값이없는 경우
if(idList.size()>0
criteria.add(Restrictions.in("id", idList));
그래서 무엇을 변경하는 것은 내가 여기해야 ... 아무것도 반환하지 않습니다 내가 원하는 .. 그것은 excepti 대신에 ons ... 미리 감사드립니다!
감사합니다. 아론 .. 그 작품! – RKodakandla