Dos funciones

From: Gilberto Castillo Martínez <gilberto(dot)castillo(at)etecsa(dot)cu>
To: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Dos funciones
Date: 2008-03-24 13:55:50
Message-ID: 1206366950.7200.6.camel@gilbertoc-desktop
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Tengo estas dos funciones:

CREATE OR REPLACE FUNCTION inserta_registro()
RETURNS "trigger" AS
$BODY$
BEGIN
-- if a trigger insert operation occurs
IF TG_OP = 'INSERT' THEN
-- inserto los datos column y asigno el corriente tiempo
insert into "public"."trazas" ("id_usuario", "fecha",
"operacion","tabla","id_llave_tabla") values (getpgusername(), now(),
'INSERT','Grupos', NEW.id_grupo);
ELSE
insert into "public"."trazas" ("id_usuario", "fecha",
"operacion","tabla","id_llave_tabla") values (getpgusername(), now(),
'UPDATE','Grupos', NEW.id_grupo);
END IF;
-- displays the new row on an insert
RETURN NEW;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;

*************************************

CREATE OR REPLACE FUNCTION inserta_registro(text, text)
RETURNS text AS
$BODY$
DECLARE
_TABLA alias for $1;
_id_tabla alias for $2;

BEGIN
-- if a trigger insert operation occurs
IF TG_OP = 'INSERT' THEN
-- inserto los datos column y asigno el corriente tiempo
insert into "public"."trazas" ("loginname", "fecha_tiempo",
"operacion","nombre_tabla","nombre_columna") values (getpgusername(),
now(), 'INSERT',_TABLA, _id_tabla);
ELSE
insert into "public"."trazas" ("loginname", "fecha_tiempo",
"operacion","nombre_tabla","nombre_columna") values (getpgusername(),
now(), 'UPDATE',_TABLA, _id_tabla);
END IF;
-- displays the new row on an insert
RETURN $1;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;

Mi intención es llamarlas desde un trigger, la primera me funciona sin
difuculta, pero me resuelve el poder utilizar para todas mis tabla ...
la segunda función es mas o menos lo que deseo hacer... pero esta me da
error al utilizar dentro del trigger .... necesito me ayuden a resolver
el problema.

Saludos,
Gilberto.

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Sierra Gattorno 2008-03-24 14:01:15 Re: Se puede hacer ?
Previous Message Edwin Quijada 2008-03-24 13:55:20 RE: Error compilando 8.3.1