Está en la página 1de 20

Base de Datos II

Ing. Juan Antonio Campos Echeverría

SESIÓN-02
SEMESTRE 01-2021
Tabla de contenidos
❑¿Qué es un Triggers?
❑Ejemplos de transacciones con Transac SQL
❑Entorno de SQL Server
❑SSMS
❑Inicio de SQL Server, conexión de Base de
Datos
❑Creación de Base de Datos
❑Creación de tablas
❑Soluciones
❑Ejemplos Trigger, Transacciones.
❑Tarea
TRIGGER

Un trigger o disparador es un objeto


que se asocia con tablas y se almacena
en la base de datos. Su nombre se
deriva por el comportamiento que
presentan en su funcionamiento, ya que
se ejecutan cuando sucede algún
evento sobre las tablas a las que se
encuentra asociado.
TRIGGER

Los eventos que hacen que se ejecute


un trigger son las operaciones de
inserción (INSERT), borrado (DELETE)
o actualización (UPDATE), ya que
modifican los datos de una tabla.
TRIGGER

La utilidad principal de un trigger es


mejorar la gestión de la base de
datos, ya que no requieren que un
usuario los ejecute. Por lo tanto, son
empleados para implementar las
REGLAS DE NEGOCIO de una base
de datos.
REGLAS DE NEGOCIO

Una Regla de Negocio es cualquier


restricción, requerimiento, necesidad o
actividad especial que debe ser
verificada al momento de intentar
agregar, borrar o actualizar la
información de una base de datos.
REGLAS DE NEGOCIO
COMBINACIÓN TIPOS TRIGGER
• La acción del trigger, siempre que no se
viole la restricción del trigger se ejecuta
dependiendo de la combinación de tipos de
trigger:
– Before statement: Antes de ejecutar la
sentencia de disparo.
– Before row: Antes de modificar cada fila
afectada por la sentencia de disparo, y
antes de chequear las restricciones de
integridad apropiadas.
COMBINACIÓN TIPOS TRIGGER
– After statement: Después de ejecutar la
sentencia de disparo, y después de
chequear las restricciones de integridad
apropiadas.

– After row: Después de modificar cada


fila afectada por la sentencia de disparo
y posiblemente aplicando las
restricciones de integridad apropiadas .
Estructura Básica de un Trigger
• 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 de Trigger
• 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 cada vez que se llama
al disparador 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.
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 porque 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.
Transacciones en SQL Server
• Una transacción es un conjunto de operaciones
Transact SQL que se ejecutan como un único bloque,
es decir, si falla una operación Transact SQL fallan
todas. Si una transacción tiene éxito, todas las
modificaciones de los datos realizadas durante la
transacción se confirman y se convierten en una parte
permanente de la base de datos. Si una transacción
encuentra errores y debe cancelarse o revertirse, se
borran todas las modificaciones de los datos.
Transacciones en SQL Server
• La sentencia que se utiliza para indicar el comienzo
de una transacción es ‘BEGIN TRAN’. Si alguna de
las operaciones de una transacción falla hay que
deshacer la transacción en su totalidad para volver al
estado inicial en el que estaba la base de datos
antes de empezar. Esto se consigue con la sentencia
‘ROLLBACK TRAN’.
• Si todas las operaciones de una transacción se
completan con éxito hay que marcar el fin de una
transacción para que la base de datos vuelva a estar
en un estado consistente con la sentencia ‘COMMIT
TRAN’.
TAREA

¿Qué es una regla de negocio y su


implementación en una base de datos?
Lo maravilloso de aprender
algo es que nadie puede
arrebatárnoslo (B. B. King)

Gracias por su atención, bendiciones.

También podría gustarte