Ver Mensaje Individual
  #5 (permalink)  
Antiguo 21/04/2015, 14:46
Avatar de AnGuisi
AnGuisi
 
Fecha de Ingreso: julio-2013
Ubicación: San Felipe - Yaracuy
Mensajes: 122
Antigüedad: 11 años, 5 meses
Puntos: 2
Respuesta: Function pl/pgsql

Esto es lo que ejecuto:

Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION create_role(CHARACTER VARYING,CHARACTER VARYING)
  2.   RETURNS void AS
  3. $BODY$
  4. DECLARE
  5.  
  6. BEGIN
  7.  
  8. EXECUTE 'create role '|| $1 || ' login encrypted password '|| $2 || ' nosuperuser inherit nocreatedb nocreaterole;
  9. GRANT usercomun to $1;';
  10.  
  11. END;
  12.  
  13. $BODY$
  14.   LANGUAGE plpgsql;
  15.  
  16. 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