Версия нашей базы данных Oracle - 10 г.
Хранимая процедура выбирает все элементы в таблице и возвращает тип REF CURSOR следующим образом:
создать или заменить
PROCEDURE S_S_TEST(
test_OUT OUT OAS_TYPES.REFCURSOR
)
AS
BEGIN
OPEN test_OUT FOR
SELECT *
FROM table_p;
CLOSE test_OUT;
END S_S_TEST;
Когда эта хранимая процедура выполняется в JAVA, получается следующее исключение:
java.sql.SQLException: Cursor is closed. at oracle.jdbc.driver.T4CResultSetAccessor.getCursor(T4CResultSetAccessor.java:323) at oracle.jdbc.driver.ResultSetAccessor.getObject(ResultSetAccessor.java:85) at oracle.jdbc.driver.OracleCallableStatement.getObject(OracleCallableStatement.java:1401) at com.ibm.ws.rsadapter.jdbc.WSJdbcCallableStatement.getObject(WSJdbcCallableStatement.java:443)
Я пытаюсь понять, что это за ошибка и как ее можно исправить. Может ли кто-нибудь помочь мне?
Спасибо!