我正在处理使用一些复杂逻辑在 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 中获取相关的参数绑定信息(值和类型)?如果有一些第三方库可以做到这一点,那就太好了,否则我需要一种方法来挖掘各种绑定。
谢谢。