如何在JPA中获取存储过程的结果集?
问题描述:
我有SQL Server 2008和JPA(EclipseLink)应用程序。我需要能够读取存储过程中的行。该存储过程做了一些更新的/ etc但最后返回如何在JPA中获取存储过程的结果集?
select * from @result_table
现在,当我使用访问它在JPA:
String sql = "exec up_GetUpdatedRows ?, ?, ?";
entityManager = Factories.getEntityManager();
Query query = entityManager.createNativeQuery(sql);
query.setParameter(1, myKey).setParameter(2, workDate).setParameter(3, createdBy);
List<Object[]> obj = query.getResultList();
我得到以下错误:
Internal Exception: com.microsoft.sqlserver.jdbc.SQLServerException: The statement did not return a result set.
这适用于其他原生SQL。
任何想法?
谢谢
这似乎与JPA无关。这似乎与底层JDBC驱动程序更相关。检查这个[问题/答案](http://stackoverflow.com/questions/1826271/sqlserverexception-the-statement-did-not-return-a-result-set-when-executing-sql)。此人与您报告相同的问题。也许答案也适用于你。 – 2011-06-08 19:49:58