如何使用Session Factory从Java Hibernate执行sql存储过程? [英] How to execute a sql stored procedure from Java Hibernate using Session Factory?
本文介绍了如何使用Session Factory从Java Hibernate执行sql存储过程?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我无法使用会话工厂从java hibernate调用我的存储过程
我写了一个sql过程,它接受5个参数并返回可正常工作的结果集在MS SQL工作室
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
我正在设置上述查询的参数
字符串queryString =EXEC SlaGrid @ applID =:applID,@ fromYear =:fromYear,@ toYear =:toYear,@ fromMon =:fromMon,@ toMon =:toMon
Query query = sessionFactory.getCurrentSession()。createSQLQuery(queryString);
//在这里设置查询参数
query.list()---给出sql语法异常
解决方案
我简单地通过下面的代码解决了它...只需传递参数CSV.Thanks帮助球员。 p>
字符串queryString =SlaGrid 245,2012,2013,1,12
查询查询= sessionFactory。 。的getCurrentSession()createSQLQuery(的queryString);
query.list();
完美无缺:)
I am unable to call my stored procedure from java hibernate using session factory
I have written a sql procedure which takes 5 parameters and return a result set which works fine in 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
i am setting the parameters for the above query
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
解决方案
I solved it simply by the following code...Just pass the parameters in CSV.Thanks for the help guys..
String queryString = "SlaGrid 245,2012,2013,1,12"
Query query = sessionFactory.getCurrentSession().createSQLQuery(queryString);
query.list();
Works Perfect :)
这篇关于如何使用Session Factory从Java Hibernate执行sql存储过程?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文