Я испытываю некоторые разочарования, пытаясь заставить простую процедуру извлечения курсора Oracle работать с JDBC.
Я продолжаю получать сообщение об ошибке «[Oracle] [ODBC] [Ora] ORA-06553: PLS-306: неверный номер или типы аргументов при вызове« GETNAME »», но я не могу понять, кто я поступаю неправильно.
Вот мой код на Java:
CallableStatement stmt = connection.prepareCall("call getName(?)");
stmt.registerOutParameter(1, OracleTypes.CURSOR);
stmt.execute();
stmt.close();
con.close();
Вот моя процедура в Oracle:
CREATE OR REPLACE PROCEDURE getName(cur out SYS_REFCURSOR)
IS
BEGIN
OPEN cur FOR
SELECT name FROM customer;
END;
Ошибка возникает на stmt.execute()
.
Заранее спасибо.
Кстати, я работаю с Oracle 10.2.0.