我在 Oracle 数据库中有一个存储过程。
GET_VENDOR_STATUS_COUNT(DOCUMENT_ID IN NUMBER, NOT_INVITED OUT NUMBER, INVITE_WITHDRAWN OUT NUMBER, ...
其他参数是输出参数。
在我的hbm文件中,我写了以下内容:
<sql-query name="getVendorStatus" callable="true">
<return-scalar column="NOT_INVITED" type="string"/>
<return-scalar column="INVITE_WITHDRAWN" type="string"/>
<return-scalar column="INVITED" type="string"/>
<return-scalar column="DISQUALIFIED" type="string"/>
<return-scalar column="RESPONSE_AWAITED" type="string"/>
<return-scalar column="RESPONSE_IN_PROGRESS" type="string"/>
<return-scalar column="RESPONSE_RECEIVED" type="string"/>
{ call GET_VENDOR_STATUS_COUNT(:DOCUMENT_ID , :NOT_INVITED ,:INVITE_WITHDRAWN ,:INVITED ,:DISQUALIFIED ,:RESPONSE_AWAITED ,:RESPONSE_IN_PROGRESS ,:RESPONSE_RECEIVED ) }
</sql-query>
以下是我的Java代码:
session.getNamedQuery("getVendorStatus").setParameter("DOCUMENT_ID", "DOCUMENT_ID").setParameter("NOT_INVITED", "NOT_INVITED")
请继续直到所有参数。
我遇到了以下SQL异常:
18:29:33,056 WARN [JDBCExceptionReporter] SQL错误:1006,SQL状态: 72000
18:29:33,056 ERROR [JDBCExceptionReporter] ORA-01006:绑定变量不存在
请告诉我在Hibernate中调用存储过程的确切过程是什么?我不想使用JDBC可调用语句。