ОШИБКА: курсор «<безымянный портал 5>» не существует.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 ОШИБКА: курсор «<безымянный портал 5>» не существует.

Сообщение Anonymous »

Я пытаюсь вызвать функцию/хранимую процедуру PostgreSQL (которая возвращает курсор). Я вызываю эту функцию через хранимый-proc-outbound-gateway Spring Integration. Это дает мне ошибку ниже:

Код: Выделить всё

Caused by: org.springframework.messaging.MessageHandlingException: Expression evaluation failed: @sampleProcedureGateway.exchange(#root).payload; nested exception is org.springframework.jdbc.UncategorizedSQLException: CallableStatementCallback; uncategorized SQLException for SQL [{? = call erb.getSampleDetails_sp(?, ?, ?, ?, ?)}]; SQL state [34000]; error code [0]; ERROR: cursor "" does not exist; nested exception is org.postgresql.util.PSQLException: ERROR: cursor "" does not exist
Ниже приведена моя конфигурация интеграции Spring:
Ниже представлена ​​хранимая процедура:

Код: Выделить всё

CREATE OR REPLACE FUNCTION erb.getSampleDetails_sp(
id text,
date text,
name text,
endrow double precision,
startrow double precision,
OUT finalData refcursor)
RETURNS refcursor
LANGUAGE 'plpgsql'

COST 100
VOLATILE
AS $BODY$

BEGIN
IF name = 'true' THEN
OPEN finalData FOR
SELECT
*
FROM (SELECT
row_number() OVER (ORDER BY NULL) AS rnum, vhinv.*
FROM (SELECT query) AS vhinv
LIMIT i_endrow) AS var_sbq
WHERE rnum >= i_startrow;
ELSE
OPEN finalData FOR
SELECT
*
FROM (SELECT
row_number() OVER (ORDER BY NULL) AS rnum, vhinv.*
FROM (SELECT query) AS vhinv
LIMIT i_endrow) AS var_sbq_2
WHERE rnum >= i_startrow;
END IF;
END;

$BODY$;
Есть ли способ решить эту проблему?

Подробнее здесь: https://stackoverflow.com/questions/504 ... -not-exist
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»