Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/02/2012, 09:47
AdvKael
 
Fecha de Ingreso: febrero-2012
Mensajes: 136
Antigüedad: 12 años, 1 mes
Puntos: 8
Respuesta: Trigger no me permite Borrar todas las filas

Gracias por responderme gnzsoloyo

Bueno... soy un novato en trigger y bueno lo que quiero hacer es usar ... un trigger en una tabla ... para que despues de actuilizar mi tabla
Código:
AFTER UPDATE ON `ncpp`.`temp_asigdefpub`
... se ejecute mi logica ...

Evaluando primero un dos select
Código:
if(SELECT COUNT(*) FROM m_defpub )=(SELECT COUNT(*) FROM temp_asigdefpub WHERE b_asigdefpubEst=true) THEN
si esto es verdadero ... que me copie el contenido de la tabla a otra
Código:
INSERT INTO `ncpp`.`t_asigdefpub`
    (
    idasigdefpub,
    iddefpub,
    d_asigdepubFec,
    c_asigdefpubUsu,
    c_asigdefpubMaq,
    t_asigdefpubIni,
    t_asigdefpubFin,
    b_asigdefpubEst
    )

    select idasigdefpub,iddefpub,
    d_asigdepubFec,
    c_asigdefpubUsu,
    c_asigdefpubMaq,
    t_asigdefpubIni,
    t_asigdefpubFin,
    b_asigdefpubEst FROM `ncpp`.`temp_asigdefpub`;
Hasta esta parte me funciona ...

Pero como ya lo copie quiero borrar el origen de la copia
Código:
DELETE FROM temp_asigdefpub where iddefpub!=0;
pero no me lo permite .. supongo que es el uso del trigger q pertenece a la tabla ..

Luego de eso de borrar la tabla quiero poblar denuevo la tabla borrada
Código:
 INSERT INTO temp_asigdefpub
    (
        iddefpub,
        b_asigdefpubEst
    )
    
    SELECT iddefpub,false FROM `ncpp`.`m_defpub`;
Queria hacer este atravez de trigger no se si se podra realizar ...
Si no tendria que poner dicha logica en mi codigo fuente...

Gracias por la ayuda
...