在hibernate中HQL似乎不能使用 select *
例如:
strHQL = "select * FROM TRscPrCommon WHERE practid in "
+ " (select practid from TRscPrMcMapping "+ " where lstPractsId=" + Long.toString(lstPractsId) + " )";
提示错误如下:
严重: Servlet.service() for servlet action threw exception
java.lang.NoSuchMethodError: org.hibernate.hql.antlr.HqlBaseParser.recover(Lantlr/RecognitionException;Lantlr/collections/impl/BitSet;)V
........
...........
...........
但是改为:
strHQL = " FROM TRscPrCommon WHERE practid in "
+ " (select practid from TRscPrMcMapping "+ " where lstPractsId=" + Long.toString(lstPractsId) + " )";
就是正确的,不再提示错误!
例如:
strHQL = "select * FROM TRscPrCommon WHERE practid in "
+ " (select practid from TRscPrMcMapping "+ " where lstPractsId=" + Long.toString(lstPractsId) + " )";
提示错误如下:
严重: Servlet.service() for servlet action threw exception
java.lang.NoSuchMethodError: org.hibernate.hql.antlr.HqlBaseParser.recover(Lantlr/RecognitionException;Lantlr/collections/impl/BitSet;)V
........
...........
...........
但是改为:
strHQL = " FROM TRscPrCommon WHERE practid in "
+ " (select practid from TRscPrMcMapping "+ " where lstPractsId=" + Long.toString(lstPractsId) + " )";
就是正确的,不再提示错误!