java Hibernate批量删除不工作?
我正在尝试从表中批量删除数据。对于该am,设置要删除的参数列表
ArrayList<Integer> ids = new ArrayList<Integer>();
ids.add(1);
ids.add(2);
ids.add(3);
ids.add(4);
Session session1 = sfactory.openSession();
Transaction txn1 = session1.beginTransaction();
Query query = session1.createQuery("delete from QueueData tbl where tbl.iID in =:id");
query.setParameter("id", ids);
int i = query.executeUpdate();
txn1.commit();
我在执行语句时遇到异常
SEVERE: line 1:61: unexpected token: =
Exception in thread "main"
org.hibernate.hql.ast.QuerySyntaxException:
unexpected token: = near line 1, column 61 [delete from
hibernetexamples.QueueData tbl where tbl.iID in =:id]
at org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:31)
at org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:24)
at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:59)
at org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:258)
at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:157)
at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:111)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:77)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:56)
at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:72)
at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:133)
at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:112)
at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1623)
at hibernetexamples.HibernetExamples.main(HibernetExamples.java:104)
共 (0) 个答案