TEMA: TRIGGERS EN MYSQL
QUE ES UN TRIGGER
• Un trigger o disparador en una Base de datos, es un
procedimiento que se ejecuta cuando se cumple
una condición establecida al realizar una operación.
Dependiendo de la base de datos, los triggers
pueden ser de inserción (INSERT), actualización
(UPDATE) o borrado (DELETE). Algunas bases de
datos pueden ejecutar triggers al crear, borrar o
editar usuarios, tablas, bases de datos u otros
objetos.
LA ESTRUCTURA DE UN TRIGGER
• La estructura básica de un trigger es:
• Llamada de activación: es la
sentencia que permite "disparar"
el código a ejecutar.
• Restricción: es la condición necesaria para
realizar el código. Esta restricción puede
ser de tipo condicional o de tipo nulidad.
• Acción a ejecutar: es la secuencia de
instrucciones a ejecutar una vez que se han
cumplido las condiciones iniciales.
UN TRIGGER TIENE
• Un nombre
• Momento en que se desencadenan o disparan:
• before (antes)
• after (después)
• Evento que lo activa:
• insert (al insertar en la tabla)
• update (al actualizar en la tabla)
• delete (al eliminar en la tabla)
PARA QUE SE USAN
• Los triggers son usados para mejorar la
administración de la Base de datos, sin
necesidad de contar con que el usuario
ejecute sentencias de SQL determinadas para
tal efecto. Además, pueden generar valores
de columnas, pueden prevenir errores de
datos, sincronizar tablas, modificar valores de
una vista, auditorías de seguridad, etc.
TIPOS DE TRIGGERS
• Existen dos tipos de disparadores que se
clasifican
• según la cantidad de ejecuciones a realizar:
• Row Triggers (o disparadores de fila):
son aquellos que se ejecutaran n-veces si
se llaman n-veces desde la tabla asociada
al trigger.
• Statement Triggers (o disparadores de
secuencia): son aquellos que sin importar la
cantidad de veces que se cumpla con la
condición, su ejecución es única.
SINTAXIS BÁSICA
DELIMITER $$
CREATE TRIGGER nombre_del_trigger {BEFORE|AFTER}
{UPDATE|INSERT|DELETE} ON nombre_de_la_tabla
FOR EACH ROW
BEGIN
<bloque_de_instrucciones>
END$$
DELIMITER ;
NEW Y OLD EN TRIGGERS
Por ejemplo: OLD.existencia o NEW.existencia
Al usar INSERT solo se puede utilizar NEW, ya que
insertar agrega nuevos valores.
Al usar UPDATE se puede utilizar OLD y NEW, ya que
se modifican valores existentes por nuevos.
Si se usa DELETE se utiliza OLD debido a que se
borraran valores que existen con anterioridad.
OLD indica el valor antiguo de la columna y NEW el
valor nuevo que pudiese tomar.
COMO ELIMINAR UN TRIGGER
Puedes eliminar un thriller haciendo uso de
la sentencia DROP TRIGGER
SINTAXIS PARA ELIMINAR UN
TRIGGER
DROP TRIGGER <nombre_del_trigger>;

CREACION DE TRIGGERS.pptx

  • 1.
  • 2.
    QUE ES UNTRIGGER • Un trigger o disparador en una Base de datos, es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación. Dependiendo de la base de datos, los triggers pueden ser de inserción (INSERT), actualización (UPDATE) o borrado (DELETE). Algunas bases de datos pueden ejecutar triggers al crear, borrar o editar usuarios, tablas, bases de datos u otros objetos.
  • 3.
    LA ESTRUCTURA DEUN TRIGGER • La estructura básica de un trigger es: • Llamada de activación: es la sentencia que permite "disparar" el código a ejecutar. • Restricción: es la condición necesaria para realizar el código. Esta restricción puede ser de tipo condicional o de tipo nulidad. • Acción a ejecutar: es la secuencia de instrucciones a ejecutar una vez que se han cumplido las condiciones iniciales.
  • 4.
    UN TRIGGER TIENE •Un nombre • Momento en que se desencadenan o disparan: • before (antes) • after (después) • Evento que lo activa: • insert (al insertar en la tabla) • update (al actualizar en la tabla) • delete (al eliminar en la tabla)
  • 5.
    PARA QUE SEUSAN • Los triggers son usados para mejorar la administración de la Base de datos, sin necesidad de contar con que el usuario ejecute sentencias de SQL determinadas para tal efecto. Además, pueden generar valores de columnas, pueden prevenir errores de datos, sincronizar tablas, modificar valores de una vista, auditorías de seguridad, etc.
  • 6.
    TIPOS DE TRIGGERS •Existen dos tipos de disparadores que se clasifican • según la cantidad de ejecuciones a realizar: • Row Triggers (o disparadores de fila): son aquellos que se ejecutaran n-veces si se llaman n-veces desde la tabla asociada al trigger. • Statement Triggers (o disparadores de secuencia): son aquellos que sin importar la cantidad de veces que se cumpla con la condición, su ejecución es única.
  • 7.
    SINTAXIS BÁSICA DELIMITER $$ CREATETRIGGER nombre_del_trigger {BEFORE|AFTER} {UPDATE|INSERT|DELETE} ON nombre_de_la_tabla FOR EACH ROW BEGIN <bloque_de_instrucciones> END$$ DELIMITER ;
  • 8.
    NEW Y OLDEN TRIGGERS Por ejemplo: OLD.existencia o NEW.existencia Al usar INSERT solo se puede utilizar NEW, ya que insertar agrega nuevos valores. Al usar UPDATE se puede utilizar OLD y NEW, ya que se modifican valores existentes por nuevos. Si se usa DELETE se utiliza OLD debido a que se borraran valores que existen con anterioridad. OLD indica el valor antiguo de la columna y NEW el valor nuevo que pudiese tomar.
  • 9.
    COMO ELIMINAR UNTRIGGER Puedes eliminar un thriller haciendo uso de la sentencia DROP TRIGGER SINTAXIS PARA ELIMINAR UN TRIGGER DROP TRIGGER <nombre_del_trigger>;