如何设置postgres中用户创建函数的输出值



我试图了解如何在postgres中设置用户创建的函数的输出值。所以我写了这个简单的函数:

CREATE OR REPLACE FUNCTION test()
RETURNS BOOLEAN AS $return_value$
DECLARE return_value BOOLEAN;
BEGIN
SET return_value = TRUE
RETURN return_value;
END;
$return_value$ LANGUAGE plpgsql;

我想知道为什么这会产生错误

ERROR:  unrecognized configuration parameter "return_value"

在PL/pgSQL中使用:=对变量赋值

CREATE OR REPLACE FUNCTION test()
RETURNS BOOLEAN 
AS 
$return_value$
DECLARE 
return_value BOOLEAN;
BEGIN
return_value := TRUE; --<< you are also missing a ; at the end
RETURN return_value;
END;
$return_value$ 
LANGUAGE plpgsql;

还有一个SQL语句SET,但是它设置了数据库配置参数而不是分配PL/pgSQL变量,这解释了错误消息。

最新更新