![](/img/trans.png)
[英]How do you get multiple resultset from a single CallableStatement?
[英]How do I get all parameter binding information from a CallableStatement?
我正在處理使用一些復雜邏輯在 JDBC CallableStatement 中綁定 IN 和 OUT 參數的遺留代碼。 代碼看起來像是為 IN 和 OUT 參數綁定了正確的類型,但是在執行 CallableStatement 時,Oracle 存儲過程會拋出此異常:
ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'STORED_PROC_ABC'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
“ line 1, column7:
”沒有幫助。 它沒有指向存儲過程中的任何內容。
我編寫了一個簡單的獨立測試用例來調用存儲過程。 使用與遺留代碼相同的參數和綁定類型,它成功了。
我需要一種方法來比較遺留代碼中的兩個 CallableStatement 對象和我的獨立測試,看看有什么不同。
有沒有辦法從 CallableStatement 中獲取相關的參數綁定信息(值和類型)? 如果有一些第三方庫可以做到這一點,那就太好了,否則我需要一種方法來挖掘各種綁定。
謝謝。
您可以使用 CallableStatement.getParameterMetaData() http://download.oracle.com/javase/1.4.2/docs/api/java/sql/ParameterMetaData.ZFC35FDC70D5FC69D2698EZ83A2CA8
JDBC CallableStatement 對象旨在表示對數據庫服務器中存儲過程的調用。
使用java.sql Interface ParameterMetaData
。
一個 object 可用於獲取有關 PreparedStatement object 中參數的類型和屬性的信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.