我按照两位高手的方式改后报下面的错: ERROR - addEntity() or addScalar() must be called on a sql query before executing the query. [select strTermNum, strPan, cardType, amount, hostTransStatus, termTransStatus, strHostTsn, strTermTsn, dtOccur, settleCycle, fee, singStatus, cardTypeBasic from TransLogDeposit where hostTransStatus=:hostTransStatus]at org.hibernate.impl.SQLQueryImpl.verifyParameters(SQLQueryImpl.java:183) 为什么啊
to amazeur(无知) 好好学学hibernate吧,用hibernate不带表不写SQL,要不然怎么会有HQL这东西
我那个不是表阿 是HQL语句 freedom2001老大你会不会阿
TransLogDeposit 是表名还是实例化的类名称啊?
resultList = query.list();执行不了啊为什么
我知道是HQL,说顺嘴了,是对象别名。NND这东西还要说这么清楚。 String hql ="select cc.strTermNum, cc.strPan, cc.cardType, cc.amount, cc.hostTransStatus, cc.termTransStatus, cc.strHostTsn, cc.strTermTsn, cc.dtOccur, cc.settleCycle, cc.fee, cc.singStatus, cc.cardTypeBasic from TransLogDeposit as cc where cc.hostTransStatus=:hostTransStatus"; 改成这样试试
Query query = session.createSQLQuery(hql);试试。
为什么啊
老大阿
ERROR - addEntity() or addScalar() must be called on a sql query before executing the query. [select strTermNum, strPan, cardType, amount, hostTransStatus, termTransStatus, strHostTsn, strTermTsn, dtOccur, settleCycle, fee, singStatus, cardTypeBasic from TransLogDeposit where hostTransStatus=:hostTransStatus]at org.hibernate.impl.SQLQueryImpl.verifyParameters(SQLQueryImpl.java:183)
为什么啊
好好学学hibernate吧,用hibernate不带表不写SQL,要不然怎么会有HQL这东西
是HQL语句
freedom2001老大你会不会阿
String hql ="select cc.strTermNum, cc.strPan, cc.cardType, cc.amount, cc.hostTransStatus, cc.termTransStatus, cc.strHostTsn, cc.strTermTsn, cc.dtOccur, cc.settleCycle, cc.fee, cc.singStatus, cc.cardTypeBasic from TransLogDeposit as cc where cc.hostTransStatus=:hostTransStatus";
改成这样试试
是不是我数据库中的字段和SQL中的不一致阿?数据库中多了个"i":ihostTransStatus
???
还是不行
好象是缺少SQL的转换的驱动
{
List resultList = null;Session session = HibernateUtil.getSession();
HibernateUtil.beginTransaction();
try
{
String hql ="from TransLogDeposit where hostTransStatus=" + String.valueOf(hostTransStatus);
Query query = session.createQuery(hql);
resultList = query.list();
HibernateUtil.commitTransaction();
}
catch (HibernateException err)
{
LoggerUtil.error(err);
HibernateUtil.rollbackTransaction();
}
finally
{
HibernateUtil.closeSession();
}
return resultList;
}