Sei sulla pagina 1di 5

REPÚBLICA BOLIVARIANA DE VENEZUELA

MINISTERIO DEL PODER POPULAR PARA LA EDUCACION SUPERIOR

UNIVERSIDAD POLITECNICA TERRITORIAL DE LOS LLANOS

PNF: INFORMATICA

TRAYECTO 4 TRIMESTRE 1 SECCION 1

NÚCLEO – CALABOZO

Profesor: Bachiller:
Joaquin Saéz Yelandis Gonzalez C.I: 19.760.109
Jordy Perez. C.I: 19.760.289

Calabozo – Junio – 2019


DISPADORES:

¿Qué es un Disparador o Trigger?

Un Trigger, también llamado Disparador, en una base de datos, es un


procedimiento que se ejecuta cuando se cumple una condición establecida.
Depende de la base de datos, los Triggers pueden ser antes o después de
ejecutar un INSERT, UPDATE o DELETE.
Un Trigger funciona tanto al insertar, actualizar o borrar datos en una base de
datos o incluso al crear o editar usuarios.

¿Qué funcionalidad tienen?

Los Triggers son usados para mejorar la administración de la Base de Datos,


sin necesidad de que el usuario ejecute esas sentencias SQL.
La utilidad que se le acostumbra mayoritariamente a dar, es para prevenir
errores de datos, actualizar tablas, modificar valores, entre muchas utilidades
que el administrador le quiera dar.

¿Qué necesito para hacer mi propio Trigger?

Un programa en el cual poder escribir sentencias SQL/MySQL, por ejemplo


MySQL Workbench, y en él una base de datos, con tablas, campos o
inserciones.

Ejemplo de utilización de un Trigger.

Tenemos una base de datos llamada Campus de Verano, dónde en ella


tenemos la información de todos los usuarios que están registrados en el
campus, el nombre y los DNI de los monitores, para tener todo bajo control,
hemos creado una tabla vacía, en la cual queremos que se inserte
automáticamente datos del nombre del administrador que está insertando
datos, para tenerlo controlado, que nos haga una especie de chivatazo, por si
alguna vez pasa algo.
¿Cómo podemos ver que datos ha introducido que administrador de la Base de
Datos?
CON UN TRIGGER!
Vamos a ver su sentencia con un pequeño ejemplo:
Como podemos ver, delimitamos el Trigger, al principio y al final, para que
ejecute todas las sentencias de delimitador a delimitador.
Creamos el Trigger com CREATE TRIGGER nombre_del_trigger
Le especificamos en momento en que queremos que actúe, que puede variar
en AFTER o BEFORE.
Y le decimos en que tabla queremos que haga efecto, on registro_inserts for
each row
Abrimos y cerramos el Trigger con un Begin End; y dentro de éste pondremos
las sentencias que queremos que contenga el Trigger, esa sentencia va a ser
que inserte en la tabla registro, los valores del usuario actual, la hora y fecha, y
que ha insertado datos.

Un sencillo ejemplo (para SQL Server) sería crear un Trigger para insertar un
pedido de algún producto cuando la cantidad de éste, en nuestro almacén, sea
inferior a un valor dado.

CREATE TRIGGER TR_ARTICULO


ON ARTICULOS
AFTER UPDATE
AS
BEGIN
INSERT INTO HCO_ARTICULO
(IDARTICULO, STOCK, FECHA)
SELECT ID_ARTICULO, STOCK,
GETDATE()
FROM INSERTED
END

INSERT INTO ARTICULOS VALUES (1, 'MEMORIA', 12, '12/03/2014')

SELECT * FROM ARTICULOS

UPDATE ARTICULOS
SET STOCK = STOCK - 20
WHERE ID_ARTICULO = 1

SELECT * FROM HCO_ARTICULO

Los disparadores son soportados en MySQL a partir de la versión 5.0.2.


Algunos de los soportes existentes son los disparadores para las sentencias
INSERT, UPDATE y DELETE

El estándar SQL:2003 requiere que los disparadores den a los programadores


acceso a las variables de un registro utilizando una sintaxis como
REFERENCING NEW AS n. Por ejemplo, si un disparador está monitoreando
los cambios en la columna salario, podría escribirse un disparador como:

CREATE TRIGGER ver_salario


BEFORE UPDATE ON empleados
REFERENCING NEW ROW AS n, OLD ROW AS o
FOR EACH ROW
IF n.salario <> o.salario THEN
END IF;

Como en MySQL las sentencias se ejecutan luego de escribir el signo punto y


coma (;), cabe destacar que para crear un disparador en MySQL, antes se
escribe la sentencia DELIMITER seguida de un carácter tal como |, la cual
asigna la función del punto y coma (;) a otro carácter permitiendo que el
disparador sea escrito usando los punto y comas sin que se ejecute mientras
se escribe; después de escrito el disparador se escribe nuevamente la
sentencia DELIMITER ; para asignar al punto y coma su función habitual.
BIBLIOGRAFIA

https://www.siteground.es/kb/que-son-triggers-mysql-uso/

https://dev.mysql.com/doc/refman/8.0/en/trigger-syntax.html

Traduc

download.nust.na/pub6/mysql/doc/refman/5.0/es/create-trigger.html

tecnologiaenvivo.com/disparadores-o-triggers-en-una-base-de-datos-mysql/

Potrebbero piacerti anche