Trigger que no funciona.

From: Pablo Braulio <brulics(at)gmail(dot)com>
To: postgres <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Trigger que no funciona.
Date: 2008-03-14 11:28:21
Message-ID: 47DA6155.8050405@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hola a todos.

Me sorprende el siguiente trigger que no me funciona. No entiendo el porqué.

Añado una columna a una tabla.

alter table users add column respons_vb boolean default 'f';

Creo la función y el trigger.

create or replace function responsableVb() returns trigger as $$
begin
update users set respons_vb='f' where id != NEW.id;
return new;
end;
$$ language plpgsql;

create trigger responsableVb after update on users for each row execute
procedure responsableVb();

Pero al hacer un update en la tabla correspondiente siempre me dice:

PL/pgSQL function "responsablevb" line 2 at SQL statement
sentencia SQL: «update users set respons_vb='f' where id != $1 »

Lo que pretendo hacer con este trigger es controlar que sólo haya un
registro "t" en la columna respons_vb. No si es el mejor modo de hacerlo.

Gracias a todos.

- --

< ¡¡Nos vemos!! >
----------------------------
\
\
.::!!!!!!!:.
.!!!!!:. .:!!!!!!!!!!!!
~~~~!!!!!!. .:!!!!!!!!!UWWW$$$
:$$NWX!!: .:!!!!!!XUWW$$$$$$$$$P
$$$$$##WX!: .<!!!!UW$$$$" $$$$$$$$#
$$$$$ $$$UX :!!UW$$$$$$$$$ 4$$$$$*
^$$$B $$$$\ $$$$$$$$$$$$ d$$R"
"*$bd$$$$ '*$$$$$$$$$$$o+#"
"""" """""""
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFH2mFVK7lGsMchFswRAqS0AJ9VByAX6i+OMjuPgfnZ//K/zPsw5QCfV0gM
QYsyOaj4dPx3mMN9KIJkI5s=
=HCTx
-----END PGP SIGNATURE-----

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Silvio Quadri 2008-03-14 11:53:35 Re: CREATE ROLE / USER IF NOT EXISTS
Previous Message Rodriguez Fernando 2008-03-14 11:25:54 Re: rendimiento postgres