Pero me podrias explicar que hacen los triggers, e leido y no me keda claro. Podrias ponerme un ejemplo?
Los triggers son una sentencia de codigo que se dispara al generar cambio en una tabla, en el caso eliminar(DELETE), actualizar(UPDATE) o insertar(INSERT) registros en una tabla.
Pensa que tenes una aplicacion donde se registran nuevos usuarios y queres tener una tabla aparte para saber los ultimos que se registraron.. tu aplicacion al momento del registro de un nuevo usuario lo hace de la siguiente manera..
Código
INSERT INTO usuarios (nombre, email) VALUES ('pepito', 'pepito@hotmail.com')
Entonces utilizas un trigger al momento en que inserta un nuevo usuario en la tabla..
Código
DELIMITER $$ --Determinamos el inicio de nuestro trigger CREATE TRIGGER nuevo_usuario --Nuestro trigger se llamara nuevo_usuario BEFORE INSERT ON usuarios --El trigger se dispara antes de que inserte un nuevo usuario FOR EACH ROW --Por cada fila afectada BEGIN --Aqui creamos un nuevo registro en la tabla seguimiento_usuarios --Existen claves como OLD y NEW, para usar el valor antiguo o --su nuevo valor.. INSERT INTO seguimiento_usuarios (nombre_usuario, texto) VALUES (NEW.nombre, 'Un nuevo usuario se registro.'); END$$ --Fin
Segun cada motor de base de datos difiere en su sintaxys pero el uso es el mismo.. por ultimo te recomiendo para seguir leyendo..
https://dev.mysql.com/doc/refman/5.0/es/using-triggers.html