我想基于给该函数的参数来更改该函数中的模式搜索路径。但是,称之为:
CREATE FUNCTION test(in_schema text)
RETURNS text
LANGUAGE plpgsql
AS $fun$
BEGIN
SET search_path TO in_schema, public;
RETURN '';
END;
$fun$
不起作用。它将搜索路径设置为in_schema, public
,而不是我在函数中提供的搜索路径。
如何在函数内部设置搜索路径?
答案 0 :(得分:0)
CREATE FUNCTION test(in_schema text)
RETURNS text
LANGUAGE plpgsql
AS $fun$
BEGIN
EXECUTE format('SET search_path TO %I, public', in_schema);
RETURN '';
END;
$fun$