2 回答
TA贡献1808条经验 获得超4个赞
我的猜测是您没有正确创建或填充 PL/SQL 存储过程的 IN 参数。下面是一个代码片段,其中包含您发布的部分代码(“TestApplication.java”)并添加了我希望能解决您的问题的代码。
已编辑
Connection conn = DataSourceUtils.getConnection(dataSource); // your code
Object[] attributes = new Object[1];
attributes[0] = "Test";
java.sql.Struct obj = conn.createStruct("Receiver_List_Users_Rt", attributes);
Object[] elems = new Object[1];
elems[0] = obj;
oracle.jdbc.OracleConnection oraConn = (oracle.jdbc.OracleConnection) conn;
java.sql.Array objs = oraConn.createARRAY("Receiver_List_Users_Tbl", elems);
callStmt.setArray(1, objs);
callStmt.execute(); // your code
TA贡献1877条经验 获得超6个赞
关闭不令人满意,但是 DB 人员拆除了环境,创建了一个新环境,然后它开始工作了。所以问题不在于 java 或驱动程序端。无论 DB 出了什么问题,仍然是一个无法挽回的谜
添加回答
举报