Por primera vez estoy usando transacciones con la idea de que "se ejecute todo, o no se ejecute nada"... Y lo estoy queriendo implementar en un trigger que hace multiples inserts a diferentes tablas...
El tema es que no lo puedo hacer, a lo mejor es por un malentendido de conceptos o porque algo estoy haciendo mal.
Mi codigo es algo asi:
Código:
El tema es que cuando quiero ejecutar el script, me sale que tngo un error de sintaxis en "BEGIN;", cuando comento esa linea, ejecuta sin problemas, pero al momento de invocar al trigger se produce un error por el "COMMIT;"CREATE OR REPLACE FUNCTION asinarPersona() RETURNS "trigger" AS $BODY$ BEGIN IF (TG_OP = 'INSERT') THEN BEGIN; --Empiezo la transaccion /* MULTIPLES INSERTS */ COMMIT; END IF; return new ; END; $BODY$ LANGUAGE 'plpgsql' VOLATILE;
Alguna idea o sugerencia?
Muchas gracias...