以下是查询:Hibernate的SQL查询错误
Query q = getSession().createQuery("FROM secroles
WHERE secroles.SR_ORG = :srOrg ,
secroles.SR_PROFILE= :srUser,
ISDELETED=:isDeleted");
错误:
org.hibernate.hql.ast.QuerySyntaxException: unexpected token: , near line 1, column 37 [FROM secroles WHERE SR_ORG = :srOrg , SR_PROFILE= :srUser , ISDELETED = :ISDELETED]
功能齐全:
public String getSecroleByOrgNID(Organization srOrg, Profile srUser){try {
System.out.println("bug is here0");
begin();
Query q = getSession().createQuery("FROM secroles WHERE secroles.SR_ORG = :srOrg , secroles.SR_PROFILE= :srUser , ISDELETED=:isDeleted");
q.setParameter("srOrg", srOrg);
q.setParameter("srOrg", srUser);
q.setBoolean("isDeleted", false);
Secroles sr = (Secroles) q.uniqueResult();
Roletable rt = sr.getSrRole();
commit();
return rt.getRoleName();
} catch(HibernateException e) {
rollback();
e.printStackTrace();
System.out.println("Could not assign role\n Message: "+e.getMessage());
}
return null;
}
}
不工作,得到了错误: org.hibernate.hql.ast.QuerySyntaxException:意外的标记:,近线1,列37 FROM secroles WHERE secroles.srOrg =:SR_ORGsrOrg,secroles.srUser =: SR_PROFILE,ISDELETED =:ISDELETED] – 2011-05-31 18:54:27
你确定它是一样的错误吗?你是否按照我的建议使用了财产名称?因为你的名字看起来像列名。我建议 - 将您的查询分配给变量,并打印出来。然后用精确的错误信息发布输出。 – 2011-05-31 18:57:49
什么是白纹?它应该是类名。 – 2011-05-31 18:58:55