我想从我的Java代码中调用一个过程来从数据库中删除。下面是我的Java代码和异常
String procedureCall = "{call NEW_PORTING_PRC.delete_album_metadata(?)}";
CallableStatement cal = conn.prepareCall(procedureCall);
cal.setString(1, catId);
cal.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR);
cal.execute();
例外是:
ERROR ["http-bio-8080"-exec-9] (Content_005fDelete_jsp.java:45) - [15-05-15 14:16:01,912] -
java.sql.SQLException: ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'DELETE_ALBUM_METADATA'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
有人可以建议我哪里出错吗?
答案 0 :(得分:2)
您正在将一个参数传递给NEW_PORTING_PRC.delete_album_metadata
程序,并且它需要不同数量的参数
或
你正在传递varchar,它正在期待一个数字,日期等