2010/9/29 uno dos <refreegr...@yahoo.com> > > ¿cuál sería el orden de ejecución de estos triggers? >
la respuesta normal a ese tipo de preguntas es has la prueba... aunque a veces eso significa que tienes que leer un poco para ver como hacer la prueba, asi que incluyo un script ya listo para correr (asi 1) tu ejecutas la prueba y 2) terminas de convencerte que hacer una prueba no tiene porque ser complicado) -- Jaime Casanova www.2ndQuadrant.com Soporte y capacitación de PostgreSQL
-- una base de pruebas create database prueba; -- tablas para la prueba create table a (col1 int); create table b (col1 int); create table c (col1 int); -- la funcion del trigger create or replace function prueba_trigger() returns trigger as $$ begin raise notice 'starting trigger in %', tg_table_name; if tg_table_name = 'a' then insert into b values(1); elsif tg_table_name = 'b' then insert into c values(1); end if; raise notice 'finishing trigger in %', tg_table_name; return new; end $$ language plpgsql; -- los triggers create trigger trg_after_a after insert on a for each row execute procedure prueba_trigger(); create trigger trg_after_b after insert on b for each row execute procedure prueba_trigger(); create trigger trg_after_c after insert on c for each row execute procedure prueba_trigger(); -- la prueba insert into a values (1);
- Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) Para cambiar tu suscripción: http://www.postgresql.org/mailpref/pgsql-es-ayuda