1

我使用 AWS-SCT 将架构从 oracle 迁移到 postgreSQL,包被转换为 postgreSQL 中的函数。我需要将此函数转换为过程以与应用程序中间件中的代码进行压缩。

我试图转换为程序,每次我遇到错误SQL state: 42601inout 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$;
4

1 回答 1

2

您不能在OUT过程中使用参数(还)。正如文档所述:

OUT过程当前不支持参数。改为使用INOUT

于 2020-03-31T06:08:51.380 回答