Мне нужно извлечь текущую базу данных и передать ее в запрос для создания пользователя, чтобы он создал пользователя в группе с использованием текущей базы данных.
CREATE OR REPLACE FUNCTION public.create_dbuser(
v_username NAME,
v_password TEXT)
RETURNS smallint AS
$BODY$
DECLARE
BEGIN
EXECUTE FORMAT('CREATE ROLE "%I" IN GROUP “%I”_group LOGIN
PASSWORD ''%I''', v_username, current_database(), v_password);
RETURN 1;
-- Simple Exception
EXCEPTION
WHEN others THEN
RETURN 0;
END;
$BODY$
LANGUAGE plpgsql STRICT VOLATILE SECURITY DEFINER
COST 100;