Autor Tema: Trigger MySQL  (Leído 2978 veces)

0 Usuarios y 1 Visitante están viendo este tema.

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Trigger MySQL
« en: Octubre 29, 2012, 06:24:28 pm »
Hola amigos, tengo este trigger de MySQL tengo 3 tablas que quiero actualizar cuando se cambia los datos de la tabla Clientes, solo me funciona si modifico la cedula y el nombre al mismo tiempo, pero yo lo que quiero es al modificar unos de ellos que surtan efecto en todas las tablas que le indico.

Este es mi codigo

Código: (SQL) [Seleccionar]
DELIMITER $$

USE `control_hotel`$$

DROP TRIGGER /*!50032 IF EXISTS */ `actualizar_clientes`$$

CREATE TRIGGER `actualizar_clientes` AFTER UPDATE ON `clientes`

FOR EACH ROW BEGIN
 
 IF old.nombre <> new.nombre THEN   
 
  UPDATE alquiler SET cedula=new.cedula,nombre=new.nombre WHERE cedula=old.cedula;
  UPDATE piezas SET cedula=new.cedula,cliente=new.nombre WHERE cedula=old.cedula;
  UPDATE ventas SET cedula=new.cedula,nombre=new.nombre WHERE cedula=old.cedula;
 
 END IF;
 
END;
$$

DELIMITER ;
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo

raul338

  • Terabyte
  • *****
  • Mensajes: 894
  • Reputación: +62/-8
  • xD fan!!!!! xD
    • Ver Perfil
    • Raul's Weblog
Re:Trigger MySQL
« Respuesta #1 en: Octubre 29, 2012, 11:18:52 pm »
Tenés redundancia de datos? me parece que con un par más de tablas te evitabas eso.

De todas formas, como esta formada la clave principal de la tabla que tiene el trigger?

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Re:Trigger MySQL
« Respuesta #2 en: Octubre 30, 2012, 11:38:54 am »
Si tengo redundancia de tablas Raul. pero ya no puedo cambiar o sea puedo pero no hay tiempo jejeje, Lo que yo quiero hacer es que cuando haga un UPDATE a la tabla CLIENTES que le afecte a todas esas tablas. De que funciona funciona pero solo si le cambio la cédula y el nombre al mismo tiempo. No funciona si solo le cambio el nombre, o solo si le cambio la cedula. tengo que cambiar la cedula y el nombre solo asi me actualiza.

Mis Tablas
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo