Cześć Mam procedurę Oracle przechowywaneJak wywołać procedurę składowaną przez hibernację?
GET_VENDOR_STATUS_COUNT(DOCUMENT_ID IN NUMBER , NOT_INVITED OUT NUMBER,INVITE_WITHDRAWN OUT NUMBER,...
resztę wszystkie parametry są poza parametry.
W pliku HBM pisałem -
<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>
w Javie pisałem -
session.getNamedQuery("getVendorStatus").setParameter("DOCUMENT_ID", "DOCUMENT_ID").setParameter("NOT_INVITED", "NOT_INVITED")
... dalej do wszystkich parametes.
otrzymuję sql wyjątku
18:29:33,056 WARN [JDBCExceptionReporter] SQL Error: 1006, SQLState: 72000 18:29:33,056 ERROR [JDBCExceptionReporter] ORA-01006: bind variable does not exist
Proszę dać mi znać, jaki jest dokładny proces wywoływania procedury przechowywanej z hibernacji. Nie chcę używać instrukcji wywoływalnej JDBC.
Skorzystaj z ich [oficjalnego dokumentu] (http://docs.redhat.com/docs/en-US/JBoss_Enterprise_Web_Platform/5/html/Hibernate_Core_Reference_Guide/sp_query.html) na temat korzystania z procedur i ograniczeń przechowywanych [tutaj] (http : //docs.redhat.com/docs/en-US/JBoss_Enterprise_Web_Platform/5/html/Hibernate_Core_Reference_Guide/sp_query.html) –