Академический Документы
Профессиональный Документы
Культура Документы
Abril 01st, 2008 | Categora: MySQL A partir de MySQL 5.0.2 se incluy soporte bsico para triggers. Por ahora es muy bsico y limitado, pero an as es una importante feature. En este artculo voy a explicar que son los triggers y como se usan en MySQL.
Evento
Es el evento que tiene que ocurrir para que el trigger se active. Puede ser una sentencia INSERT, DELETE o UPDATE
Restriccin
Una vez activado el trigger, se puede evaluar una condicin, para saber si ejecutarlo o no.
Accin
La accin que realiza el trigger al ejecutarse.
3. 4. 5. 6.
BEFORE INSERT ON test FOR EACH ROW BEGIN SET NEW.DATE = NOW(); END; 7. //
NOTA: usamos la sentencia DELIMITER para poder usar "//" como delimitador en vez de ";". Veamos parte por parte que fue lo que hicimos:
1. DROP TRIGGER set_date; NOTA: no olvidar volver a poner el delimitador como ";". (DELIMITER ;).
IF NEW.salary < 0
Con eso verificamos si el nuevo valor para el campo salary (NEW.salary) es menor a cero.
4. 5. 6. 7. 8.
FOR EACH ROW BEGIN IF NEW.salary <0 THEN SET NEW.salary=0; END IF; END; 9. //
NOTA: para que un usuario pueda crear triggers, necesita el privilegio SUPER. Bueno, todava es algo muy limitado el tema de los triggers en MySQL. Pueden consultar ms sobre triggers en la info. oficial de MySQL sobre triggers.