JPA 2.1存储过程与临时表

时间:2017-07-28 12:24:02

标签: sql-server jpa java-ee stored-procedures

我发现使用JPA 2.1调用存储过程会遇到一些麻烦。

让我们假设我的程序看起来像这样

create procedure [_get_agreements_by_status]
@status int
as
begin

select
    iAgreementId
    ,sSignature
    ,iStatus
from agreement
where iStatus = @status

end

当我从apprication调用程序时,Everythings工作正常 - 我收到了我的结果集,我可以继续前进。

这是剪辑它在Java中的外观

StoredProcedureQuery  query = em.createStoredProcedureQuery("_get_agreements_by_status");
query.registerStoredProcedureParameter(1, Integer.class, ParameterMode.IN);   
query.execute();

到目前为止一切顺利。当我需要在我的程序中使用临时表时,问题就出现了。一旦我向程序添加临时表,我就无法得到结果集。 什么更令人不安的#table并不是必须成为任何查询的一部分。

我做错了什么?

数据库是MS SQL Server 2008,JPA 2.1,JDBC驱动程序4.0

0 个答案:

没有答案