Que Son Los Trigers
Enviado por Manuel7302 • 27 de Septiembre de 2014 • 1.018 Palabras (5 Páginas) • 278 Visitas
¿Que son los triggers?
Disparador o Trigger es una rutina autónoma asociada con una tabla o vista que automáticamente realiza una acción cuando una fila en la tabla o la vista se inserta (INSERT), se actualiza (UPDATE), o borra (DELETE). Un Disparador nunca se llama directamente, en cambio, cuando una aplicación o usuario intenta insertar, actualizar, o anular una fila en una tabla, la acción definida en el disparador se ejecuta automáticamente (se dispara). . Algunas bases de datos pueden ejecutar triggers al crear, borrar o editar usuarios, tablas, bases de datos u otros objetos.
Sintaxis básica:
create triggre NOMBREDISPARADOR
on NOMBRETABLA
for EVENTO- insert, update o delete
as
SENTENCIAS
Los TRIGGERS pueden ser extremadamente útiles para llevar a cabo los siguientes casos:
• Cuando los datos de una tabla son generados desde otro tipo de procesos y es necesario que se controlen los valores, para evitar que algunos campos tomen valores concretos.
• Para duplicar los contenidos de una tabla automáticamente y en tiempo real.
• Para implementar restricciones sobre valores que pueden tomar ciertos campos de la tabla.
• Incrementar automáticamente los valores de un campo.
• Para controlar las modificaciones de los valores de los campos.
• Para realizar actualizaciones de una tabla en cascada.
• Para modificar campos o registros en una tabla que un usuario no puede modificar directamente.
Aplicaciones Típicas de Triggers:
• Hacer modificaciones en cascada sobre tablas relacionadas.
• Deshacer cambios que violan la integridad de los datos.
• Forzar restricciones que son muy complejas para Reglas y restricciones.
• Mantener datos duplicados
• Mantener columnas con datos derivados
• Hacer ajustes de registros
Ventajas de los Disparadores o TRIGGERS:
• Las ventajas de usar los disparadores son:
• La entrada en vigor automática de restricciones de los datos, hace que los usuarios entren sólo valores válidos.
• El mantenimiento de la aplicación se reduce, los cambios a un disparador se refleja automáticamente en todas las aplicaciones que tienen que ver con la tabla sin la necesidad de recompilar.
• Los registros automáticos de cambios a las tablas. Una aplicación puede guardar un registro corriente de cambios, creando un disparador que se active siempre que una tabla se modifique.
• La notificación automática de cambios a la base de datos con alertas de evento en los disparadores.
• Los disparadores tienen dos palabras clave, OLD y NEW que se refieren a los valores que tienen las columnas antes y después de la modificación. Los INSERT permiten NEW, los DELETE sólo OLD y los UPDATE ambas.
Limitaciones de los Disparadores o TRIGGERS:
También hay limitaciones sobre lo que puede aparecer dentro de la sentencia que el disparador ejecutará al activarse:
• El disparador no puede referirse a tablas directamente por su nombre, incluyendo la misma tabla a la que está asociado. Sin embargo, se pueden emplear las palabras clave OLD y NEW. OLD se refiere a un registro existente que va a borrarse o que va a actualizarse antes de que esto ocurra. NEW se refiere a un registro nuevo que se insertará o a un registro modificado luego de que ocurre la modificación.
• El disparador no puede invocar procedimientos almacenados utilizando la sentencia CALL. (Esto significa, por ejemplo, que no se puede utilizar un procedimiento almacenado para eludir la prohibición de referirse a tablas por su nombre).
• El disparador no puede utilizar sentencias que inicien o finalicen una transacción.
...