Esto es lo que ejecuto:
Código SQL:
Ver originalCREATE OR REPLACE FUNCTION create_role(CHARACTER VARYING,CHARACTER VARYING)
RETURNS void AS
$BODY$
DECLARE
BEGIN
EXECUTE 'create role '|| $1 || ' login encrypted password '|| $2 || ' nosuperuser inherit nocreatedb nocreaterole;
GRANT usercomun to $1;';
END;
$BODY$
LANGUAGE plpgsql;
SELECT create_role('anguisi','120593')
El error ahora parece ser en el password.
ERROR: error de sintaxis en o cerca de «120593»
LINE 1: create role anguisi login encrypted password 120593 nosuperu...
^
QUERY: create role anguisi login encrypted password 120593 nosuperuser inherit nocreatedb nocreaterole;
GRANT usercomun to $1;
CONTEXT: función PL/pgSQL create_role(character varying,character varying) en la línea 6 en sentencia EXECUTE
********** Error **********
ERROR: error de sintaxis en o cerca de «120593»
SQL state: 42601
Context: función PL/pgSQL create_role(character varying,character varying) en la línea 6 en sentencia EXECUTE