Está en la página 1de 1

auditoria=# CREATE TABLE empleados (

auditoria(# ci_empleado text,


auditoria(# nombre text,
auditoria(# direccion text,
auditoria(# sueldo float,
auditoria(# telefono text);
CREATE TABLE
auditoria=# CREATE TABLE seguimiento(
auditoria(# operacion char(11) NOT NULL,
auditoria(# fecha_modificacion timestamp NOT NULL,
auditoria(# usuario text NOT NULL,
auditoria(# ci_empleado text NOT NULL,
auditoria(# nombre text,
auditoria(# direccion_anterior text);
CREATE TABLE
auditoria=# CREATE OR REPLACE FUNCTION seguimiento_empleados() RETURNS trigger AS
$trigger_empleados$
auditoria$#
auditoria$# BEGIN
auditoria$#
auditoria$# IF (TG_OP = 'DELETE') THEN
auditoria$# INSERT INTO seguimiento SELECT 'Borrado', now(),
user,OLD.ci_empleado,OLD.nombre;
auditoria$# RETURN OLD;
auditoria$#
auditoria$# ELSIF (TG_OP = 'UPDATE') THEN
auditoria$# INSERT INTO seguimiento SELECT 'Actualizado', now(), user,
NEW.ci_empleado,NEW.nombre,OLD.direccion;
auditoria$# RETURN NEW;
auditoria$#
auditoria$# ELSIF (TG_OP = 'INSERT') THEN
auditoria$# INSERT INTO seguimiento SELECT 'Isertado', now(), user,
NEW.ci_empleado,NEW.nombre;
auditoria$# RETURN NEW;
auditoria$# END IF;
auditoria$#
auditoria$# RETURN NULL;
auditoria$# END;
auditoria$# $trigger_empleados$ LANGUAGE plpgsql;
CREATE FUNCTION

También podría gustarte