ORA-06550:第1行第7列:PLS-00306:调用中的参数数量或类型错误

时间:2015-05-15 09:14:36

标签: java oracle

我想从我的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

有人可以建议我哪里出错吗?

1 个答案:

答案 0 :(得分:2)

您正在将一个参数传递给NEW_PORTING_PRC.delete_album_metadata程序,并且它需要不同数量的参数

你正在传递varchar,它正在期待一个数字,日期等