Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Validar UPDATE mediante trigger

Estas en el tema de Validar UPDATE mediante trigger en el foro de Mysql en Foros del Web. Hola, Tengo la siguiente inquietud: ¿Es posible validar los datos que se van a actualizar mediante un trigger beforeupdate? Puntualmente necesito que al hacer un ...
  #1 (permalink)  
Antiguo 06/05/2010, 06:57
 
Fecha de Ingreso: mayo-2009
Mensajes: 24
Antigüedad: 14 años, 11 meses
Puntos: 0
Validar UPDATE mediante trigger

Hola,

Tengo la siguiente inquietud:

¿Es posible validar los datos que se van a actualizar mediante un trigger beforeupdate?

Puntualmente necesito que al hacer un cambio en un número compruebe si éste es mayor que 0, de lo contrario que se le asigne un 0, ya que no debe tener valores negativos.

Gracias.
  #2 (permalink)  
Antiguo 06/05/2010, 07:06
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Validar UPDATE mediante trigger

Técnicamente si.
Ten en cuenta el funcionamiento del TRIGGER según lo que MySQL hace:
Cita:
* El TRIGGER no puede referirse a tablas directamente por su nombre, incluyendo la misma tabla a la que está asociado. Sin embargo, se pueden emplear las palabras clave OLD y NEW. OLD se refiere a un registro existente que va a borrarse o que va a actualizarse antes de que esto ocurra. NEW se refiere a un registro nuevo que se insertará o a un registro modificado luego de que ocurre la modificación.
* El TRIGGER no puede invocar procedimientos almacenados utilizando la sentencia CALL. (Esto significa, por ejemplo, que no se puede utilizar un procedimiento almacenado para eludir la prohibición de referirse a tablas por su nombre).
* El TRIGGER no puede utilizar sentencias que inicien o finalicen una transacción, tal como START TRANSACTION, COMMIT, o ROLLBACK.
Fuera de eso, no deberías tener problemas para tu caso.
Recuerda que en ningun momento puedes hacer desde un TRIGGER una operación que produzca un evento en otra tabla que tenga definido a su vez un TRIGGER que apunte a la que estás usando.
Es un caso extremo, pero lo he visto suceder.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: trigger, update
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:27.