From: | Pablo Braulio <brulics(at)gmail(dot)com> |
---|---|
To: | Arturo Munive <arturomunive(at)gmail(dot)com> |
Cc: | postgres <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Comprobar si un campo tiene datos antes de insertar datos en otro. |
Date: | 2007-12-21 13:57:49 |
Message-ID: | 476BC65D.9010404@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Pablo Braulio escribió:
>
>> prueba con los valores de retorno del trigger
>
>> Si tu retornas NULL desde un trigger [before a nivel de fila] postgre
>> cancelará el resto de la operación lo que significa que postgre no
>> disparará ningún trigger siguiente el INSERT, UPDATE, o DELETE no
>> ocurrirá para esa fila
>
>
> Hola.
>
> No acabo de entender lo que dices.
>
> Cuando se crea el trigger (...before update on tabla for each row...),
> ¿es posible ejecutarlo al hacer un update sobre un campo de una tabla?.
>
> De ser así, ¿podrías ponerme un ejemplo?, es que no conozco la sintaxis.
>
>
> Gracias.
>
Segun he visto en la documentación se puede ejecutar un trigger según
determinadas columnas:
CREATE TRIGGER statement in PostgreSQL implements a subset of the SQL
standard. The following functionality is currently missing:
*
SQL allows triggers to fire on updates to specific columns (e.g.,
AFTER UPDATE OF col1, col2).
Pero no acierto con la sintaxis:
create or replace function updatecontrolinicio() returns trigger as $$
begin
if new.inicio is null
then
raise exception 'La fase no ha sido iniciada previamente.';
end if;
return new;
end;
$$ language plpgsql;
create trigger updatecontrolinicio before update of fin on controlinicio
for each row execute procedure updatecontrolinicio();
Esto me da error:
ERROR: error de sintaxis en o cerca de «of»
LINE 10: create trigger updatecontrolinicio before update of fin on c...
^
¿Alguna idea?.
Gracias por el comentario.
- --
< ¡¡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
iD8DBQFHa8ZdK7lGsMchFswRAjCOAJwNKtkyYPwnOhbwRZUSxScKmKqw1wCfRb+2
ClDBXEwz6RBvl9/IK1p1r4c=
=6Ucx
-----END PGP SIGNATURE-----
From | Date | Subject | |
---|---|---|---|
Next Message | Luis Rodrigo Gallardo Cruz | 2007-12-21 14:09:23 | Re: Comprobar si un campo tiene datos antes de insertar datos en otro. |
Previous Message | Pablo Braulio | 2007-12-21 13:35:27 | Re: Comprobar si un campo tiene datos antes de insertar datos en otro. |