一尘不染

如何使用会话工厂从Java Hibernate执行sql存储过程?

hibernate

我无法使用会话工厂从Java Hibernate调用存储过程

我已经编写了一个包含5个参数的sql过程,并返回了一个在MS SQL Studio中运行良好的结果集

EXEC SlaGrid @appID=245,@fromYear=2012,@toYear=2013,@fromMon=1,@toMon=12   --- sql

EXEC SlaGrid @applID=:applID,@fromYear=:fromYear,@toYear=:toYear,@fromMon=:fromMon,@toMon=:toMon  --hibernate

我正在设置上述查询的参数

String queryString = "EXEC SlaGrid @applID=:applID,@fromYear=:fromYear,@toYear=:toYear,@fromMon=:fromMon,@toMon=:toMon"

Query query = sessionFactory.getCurrentSession().createSQLQuery(queryString);

//set query parameters here

query.list()    --- giving sql grammer exception

阅读 209

收藏
2020-06-20

共1个答案

一尘不染

我只是通过以下代码解决了它…只需在CSV中传递参数。感谢帮助人员。

String queryString = "SlaGrid 245,2012,2013,1,12"

Query query = sessionFactory.getCurrentSession().createSQLQuery(queryString);

query.list();

完美的作品:)

2020-06-20