7 messages in com.mysql.lists.mysql-esRE: Triggers: Abortar transacción
FromSent OnAttachments
Luciano A.F.18 Oct 2007 15:32 
Mario Benavides Jurado19 Oct 2007 08:40 
Paul Gallegos26 Oct 2007 17:24 
Mario Benavides Jurado28 Oct 2007 10:42 
Paul Gallegos28 Oct 2007 18:28 
Ariel Nardelli31 Oct 2007 11:40 
Mario Benavides Jurado31 Oct 2007 12:34 
Subject:RE: Triggers: Abortar transacción
From:Paul Gallegos (paul@hotmail.com)
Date:10/26/2007 05:24:38 PM
List:com.mysql.lists.mysql-es

Hola, yo entendí perfecto tu pregunta, es muy clara, y tengo la respuesta o eso
creo :P je

Yo pude probar los triggers en MySQL y me pude dar cuenta q lo q tu preguntas,
no se puede realizar en MySQL, ya que no existe un comando que cancele la acción
para la cual fué creada el trigger.

Para ser mas claro, un ejemplo:

Se crea un trigger que al ingresar un libro (en una tabla libros) se verifica si
el precio del libro es menor o igual a cero, no debe ingresar el libro y
cancelar el INSERT. Eso NO SE PUEDE REALIZAR EN MYSQL.

Encuentro que es algo que le falta por desarrollar a MySQL en cuanto a los
triggers, ya que por ejemplo ORACLE, PostgreSQL y FirebirdSQL si pueden realizar
lo anteriormente expuesto.

Espero haber sido de ayuda.

bye Paul Rubén Gallegos PeraltaIngeniero de Ejecución en Computación e
Informática.Cel: 9350@hotmail.com

From: lua@yahoo.com.ar To: mysq@lists.mysql.com Subject: Triggers: Abortar transacción Date: Thu, 18 Oct 2007 19:32:41 -0300

No tengo experiencia acerca del uso de triggers en MySQL.

La primer duda que se me viene: es posible Abortar un INSERT, UPDATE o DELETE a través de un trigger.

Es decir… por ejemplo:

CREATE TRIGGER newrow AFTER INSERT ON test FOR EACH ROW…

Luego, yo evaluaria que se de una determinada condición y si no se da, no realizo el INSERT.

Para ser más concreto, imaginen el caso de que trabaje con MyISAM y como no tengo FOREINGs KEYs desee implementar unos triggers para controlar la integridad referencial.