Как вызвать хранимую процедуру в Hibernate?

у меня есть хранимая процедура в базе данных Oracle.

GET_VENDOR_STATUS_COUNT(DOCUMENT_ID IN NUMBER, NOT_INVITED OUT NUMBER, INVITE_WITHDRAWN OUT NUMBER, ...

Другие параметры являются параметрами OUT.

В моем файле 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 ПРЕДУПРЕЖДЕНИЕ [JDBCExceptionReporter] Ошибка SQL: 1006, SQLState: 72000
18: 29: 33,056 ОШИБКА [JDBCExceptionReporter] ORA-01006: привязка переменная не существует


Дайте мне знать, каков точный процесс вызова хранимой процедуры в Hibernate? Я не хочу использовать вызываемый оператор JDBC.

7
задан informatik01 17 August 2018 в 11:17
поделиться