Re: Ayuda con trigger.

From: Pablo Braulio <brulics(at)gmail(dot)com>
To: Jaime Casanova <systemguards(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Ayuda con trigger.
Date: 2005-12-23 18:42:13
Message-ID: 200512231942.13839.brulics@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El Viernes, 23 de Diciembre de 2005 14:56, Jaime Casanova escribió:
> On 12/23/05, Pablo Braulio <brulics(at)gmail(dot)com> wrote:
> > Hola a todos.
> >
> > Estoy tratando de crar un trigger de auditoría y me muestra un error.
> >
> > Esto es debido a mi inexperiencia con funciones y triggers, por lo que
> > agradecería me prestarais una ayudita.
> >
> > Tengo creada esta tabla:
> >
> > create table auditoria(
> > id integer,
> > usuario name not null,
> > fecha date not null,
> > hora time not null,
> > accion text not null,
> > descripcion not null);
>
> que tipo de dato es decripcion? text?
>
Vaya, no lo he puesto. Si es un dato text.

> > Y la siguiente función y trigger que debería auditar.
> >
> >
> > create or replace function proc_auditoria() returns trigger as '
> > begin
> > if (tg_op = "DELETE") then
> > insert into auditoria select current_user, current_date,
> > current_time, "DELETE", old.*;
>
> tambien te va a dar error por ese old.*, creo que Alvaro menciono que
> se puede hacer lo que quieres (si es que descripcion es un text) con
> ROW(old.*)... creo...

Pues sigue mostrando el mismo error. Creo que se refiere a que no reconoce el
tipo de acción . He puesto ROW(... en cada línea, pero sigue mostrando el
mismo tipo de error.

Query failed: ERROR: no existe la columna «DELETE» CONTEXT: sentencia SQL:
«SELECT ( $1 = "DELETE")» PL/pgSQL function "proc_auditoria"
--
Saludos.
Pablo
------------
Jabber: bruli(at)myjabber(to)net

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Pablo Braulio 2005-12-23 18:48:02 Re: Contraseña de tabla pg_users.
Previous Message Mario Gonzalez 2005-12-23 18:41:45 Re: Contraseña de tabla pg_users.