1. DOCENTE : Marco Porro Chulli.
TEMA : Trigger - Activadores
CICLO : VIII “A”
INTEGRANTES :
Alberca Rojas Vicente.
Patricia Reyna Reynaga.
BAGUA GRANDE – AMAZONAS
2018
2.
3. Trigger - Activadores
Definición
Los activadores se copian como parte de las tablas a las que pertenecen.
Esta sentencia puede incorporarse en un programa de aplicación o
emitirse mediante el uso de sentencias de SQL dinámico. Es una función
de devolución de llamada, se ejecutará automáticamente cuando se
produce el evento de base de datos llamada / especificado.
4. Trigger - Activadores
Se inicia en el momento de la ocurrencia de una tabla de bases de datos
específicas DELETE, INSERT o UPDATE o activan cuando se produce
una o más columnas especificadas de una actualización de la tabla.
5. Trigger - Activadores
Sólo es compatible con activadores FOR EACH ROW (Trigger), no para
cada desencadenantes declaración (Trigger). Por lo tanto, la autorización
explicitará PARA CADA FILA es opcional.
6. Sintaxis
Sintaxis
Crear undisparador (Trigger) La
sintaxis básica es la siguiente:
CREATE TRIGGER trigger_name
[ANTES | DESPUÉS] event_name
EN nombre_tabla
COMIENZO
- La lógica de disparo va aquí....
FIN;
7. Trigger - Activadores
CREACIÓN
Una declaración CREATE TABLE está formada
por las palabras clave CREATE TABLE,
seguidas del nombre de la nueva tabla y (entre
paréntesis) una lista de definiciones y
restricciones de columnas. El nombre de la
tabla puede ser un identificador o una cadena.
8. Trigger - Activadores
MODIFICACIÓN
El comando de actualización cambia los registros existentes en una tabla.
El comando consta de una palabra clave UPDATE seguida del nombre
de la tabla en la que se desean actualizar los registros.
9. Trigger - Activadores
ELIMINACIÓN
El comando DELETE se utiliza para eliminar registros de una tabla.
El comando está formado por las palabras clave DELETE FROM
seguidas del nombre de la tabla de la que se eliminarán los registros.
10. Trigger - Activadores
Ejemplos
CREATE TRIGGER TR_ARTICULOS
ON ARTICULOS
AFTER UPDATE
AS
BEGIN
INSERT INTO HCO_STOCK
(IDARTICULO, STOCK, FECHA)
SELECT IDARTICULO, STOCK, getdate ()
FROM INSERTED
END
--- Con este evento UPDATE se desencadena el
Trigger
UPDATE ARTICULOS
SET STOCK = STOCK + 10
WHERE IDARTICULO = 1
Se graba un histórico de stock cada vez que se
modifica un artículo de la tabla “artículos”
11. Trigger - Activadores
Podemos hacer que el trigger deshaga toda la operación incluyendo un
ROLLBACK
CREATE TRIGGER TR_ARTICULOS
ON ARTICULOS
AFTER UPDATE
AS
BEGIN
INSERT INTO HCO_ARTICULOS
(IDARTICULO, STOCK, FECHA)
SELECT IDARTOCULO, STOCK, getdate()
FROM INSERTED
ROLLBACK
END