Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Trigger para Crear Roles PGSQL

Estas en el tema de Trigger para Crear Roles PGSQL en el foro de Bases de Datos General en Foros del Web. Mi problema es el siguiente, quiero hacer un blindaje de base de datos, es decir, quiero que cada vez que agregue un nuevo usuario a ...
  #1 (permalink)  
Antiguo 10/03/2009, 10:06
 
Fecha de Ingreso: marzo-2009
Mensajes: 1
Antigüedad: 15 años, 1 mes
Puntos: 0
De acuerdo Trigger para Crear Roles PGSQL

Mi problema es el siguiente, quiero hacer un blindaje de base de datos, es decir, quiero que cada vez que agregue un nuevo usuario a mi sistema se agregue un rol para ese usuario a la base de datos de postgres, ahora bien, me parecio que la mejor forma de hacerlo era por medio de un trigger que ejecute una funcion luego del insert utilizado para la tabla Usuarios del sistema,

Estoy intentando hacerlo de esta forma:

CREATE OR REPLACE FUNCTION sp_crear_roles() RETURNS trigger AS $trigger_crear_roles$

BEGIN

CREATE ROLE new.usuario;

RETURN NEW;
END;
$trigger_crear_roles$ LANGUAGE plpgsql;

Pero me da el siguiente error:

ERROR: error de sintaxis en o cerca de «$1»
LINE 1: CREATE ROLE $1
^
QUERY: CREATE ROLE $1
CONTEXT: SQL statement in PL/PgSQL function "sp_crear_roles" near line 4

********** Error **********

ERROR: error de sintaxis en o cerca de «$1»
SQL state: 42601
Context: SQL statement in PL/PgSQL function "sp_crear_roles" near line 4

Ahora bien, segun veo el problema es que no parece aceptarme ningun tipo de parametro, porque intente hacerlo usando una variable y consegui el mismo problema.

Si saben como podria hacerlo se los agradezco..
  #2 (permalink)  
Antiguo 10/03/2009, 10:37
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Respuesta: Trigger para Crear Roles PGSQL

Hola izraelsandrea. Bienvenid@ al foro.

Para hacer preguntas es preferible utilizar el foro que mejor se adapte a tu duda, así podrán ayudarte más usuarios.

Muevo tu mensaje al foro de Bases de datos desde Bienvenida a Foros del Web.

Saludos,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:45.