我有一个存储过程,它有 3 个输入参数和一个名为
'TEST(name1 IN VARCHAR2, name2 IN VARCHAR2, name3 IN VARCHAR2, 结果 OUT VARCHAR2)'
如何使用 Hibernate Criteria API 调用此存储过程。我的配置如下:Hibernate 3.x,和Oracle。
我有一个存储过程,它有 3 个输入参数和一个名为
'TEST(name1 IN VARCHAR2, name2 IN VARCHAR2, name3 IN VARCHAR2, 结果 OUT VARCHAR2)'
如何使用 Hibernate Criteria API 调用此存储过程。我的配置如下:Hibernate 3.x,和Oracle。
Criteria API 做了一些花哨的东西,但基本上仍然只是组装和执行 SQL 查询。
好吧,我们不能在 SQL 中使用过程,只能使用函数。所以你需要做的是重写你的过程,让它有一个函数的签名。就像是:
create or replace function test
(name1 IN VARCHAR2, name2 IN VARCHAR2, name3 IN VARCHAR2)
return varchar2
is
result varchar2(30); -- or whatever length it needs
begin
-- do your stuff here, populating RESULT as before.
return result;
end;