我有以下包含 6 个参数的函数。
这里我想给参数cola
、colc
和colf
设置默认值null。
函数:fun_Test
create or replace function fun_Test
(
cola int default null,
colb varchar(10),
colc int default null,
cold varchar(10),
cole varchar(10),
colf varchar(50) default null
)
returns void AS
$$
begin
raise info '%',cola;
raise info '%',colb;
raise info '%',colc;
raise info '%',cold;
raise info '%',cole;
raise info '%',colf;
end;
$$
language plpgsql;
但是出现错误。
错误:有默认值后的输入参数也必须有默认值
最佳答案
您必须重新排序您的参数!只需将默认值放在末尾即可。
关于PostgreSQL 9.3 : Setting parameters values default to null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34263403/