ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Triggers En My Sql


Enviado por   •  21 de Febrero de 2014  •  783 Palabras (4 Páginas)  •  392 Visitas

Página 1 de 4

Trigger (base de datos)

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.

Usos

Son usados para mejorar la administración de la Base de datos, sin necesidad de contar con que el usuario ejecute la sentencia de SQL. Además, pueden generar valores de columnas, previene errores de datos, sincroniza tablas, modifica valores de una vista, etc. Permite implementar programas basados en paradigma lógico (sistemas expertos, deducción).

Componentes principales

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.

Tipos

Existen dos tipos de disparadores que se clasifican según la cantidad de ejecuciones a realizar:

• Row Triggers (o Disparadores de fila): son aquellas que se ejecutaran n-veces si se llama 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.

Pueden ser de sesión y almacenados; pero no son de fiar[cita requerida].

Efectos y características

• No aceptan parámetros o argumentos (pero podrían almacenar los datos afectados en tablas temporales)

• No pueden ejecutar las operaciones COMMIT o ROLLBACK por que estas son parte de la sentencia SQL del disparador (únicamente a través de transacciones autónomas)

• Pueden causar errores de mutaciones en las tablas, si se han escrito de manera deficiente.

Ejemplo

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.

BEFORE UPDATE ON tabla_almacen

FOR ALL records

IF NEW.producto < 100 THEN

INSERT INTO tabla_pedidos(producto) VALUES ('1000');

END IF;

SELECT DBO.POLVE.TEST

END

Disparadores en MySQL

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

...

Descargar como (para miembros actualizados) txt (5 Kb)
Leer 3 páginas más »
Disponible sólo en Clubensayos.com