Преобразование функции PostgreSQL в хранимую процедуру PostgreSQL

Я перенес схему из Oracle в postgreSQL с помощью AWS-SCT, пакеты конвертируются в функции в postgreSQL. Мне нужно преобразовать эту функцию в процедуру для сжатия кода в промежуточном программном обеспечении приложения.

Я пытался преобразовать в процедуру, каждый раз получаю ошибку вроде SQL state: 42601 а также inout parameter are permitted

Пожалуйста, помогите преобразовать функцию в процедуру.

CREATE OR REPLACE Function "pk_audfreq$sp_audfreq"(
    OUT out_a double precision,
    OUT out_b double precision,
    OUT out_c double precision)
    RETURNS record
    LANGUAGE 'plpgsql'
    COST 100
    VOLATILE 
AS $BODY$
DECLARE
BEGIN    
    SELECT
        MIN(audresponsetime), AVG(audresponsetime), MAX(audresponsetime)
        INTO STRICT out_a, out_b, out_c
        FROM public.audio_freq;        
    END;
$BODY$;

1 ответ

Вы не можете иметь OUTпараметры с процедурами (пока). Как указано в документации:

OUTаргументы в настоящее время не поддерживаются для процедур. ИспользоватьINOUT вместо.

Другие вопросы по тегам