Hi Tôi có một lời sấm được lưu trữ thủ tụcLàm thế nào để gọi thủ tục lưu trữ bằng ngủ đông?
GET_VENDOR_STATUS_COUNT(DOCUMENT_ID IN NUMBER , NOT_INVITED OUT NUMBER,INVITE_WITHDRAWN OUT NUMBER,...
còn lại tất cả các thông số OUT thông số.
Trong file hbm Tôi đã viết -
<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>
Trong java Tôi đã viết -
session.getNamedQuery("getVendorStatus").setParameter("DOCUMENT_ID", "DOCUMENT_ID").setParameter("NOT_INVITED", "NOT_INVITED")
... tiếp tục cho đến khi tất cả các parametes.
Tôi nhận được ngoại lệ sql
18:29:33,056 WARN [JDBCExceptionReporter] SQL Error: 1006, SQLState: 72000 18:29:33,056 ERROR [JDBCExceptionReporter] ORA-01006: bind variable does not exist
Xin vui lòng cho tôi biết quá trình chính xác của cách gọi một thủ tục lưu trữ từ ngủ đông là gì. Tôi không muốn sử dụng câu lệnh có thể gọi JDBC.
Tham khảo [tài liệu chính thức] của họ (http://docs.redhat.com/docs/en-US/JBoss_Enterprise_Web_Platform/5/html/Hibernate_Core_Reference_Guide/sp_query.html) về cách sử dụng các thủ tục và giới hạn được lưu trữ [tại đây] (http : //docs.redhat.com/docs/en-US/JBoss_Enterprise_Web_Platform/5/html/Hibernate_Core_Reference_Guide/sp_query.html) –