我在 PostgreSQL(11.5 版)中创建了一个用户定义的类型。
CREATE TYPE key_type AS (key_no character varying(50), key_nm character varying(128));
我创建了下面的函数,输入参数类型key_type[]为TEXT.
create or replace function fn_net(inp IN key_type[]) returns TEXT as........
但我无法调用该函数,我尝试如下。
do
$$
declare
v_key key_type[];
v_res TEXT;
begin
v_key.key_no := '709R';
v_key.key_nm := 'Risk';
select * from fn_det(v_key) into v_res;
raise notice '%', v_res;
end;
$$
language plpgsql;
我收到格式错误的数组错误或函数不存在错误。请帮助我了解如何正确传递输入。
注意:如果我将输入类型指定为key_type而不是,我能够成功运行,key_type[]但我需要数组类型来满足要求。