Está en la página 1de 17

INDICE

................................................................................................................................. 4
1. TRIGGER .................................................................................................................................. 4
1.1 CONCEPTO: ..................................................................................................................... 4
1.2 USO:................................................................................................................................. 4
1.3 UN TRIGGER TIENE ASOCIADO: ...................................................................................... 4
1.4 Limitaciones de los triggers .................................................................................... 5
1.5 APLICACIONES TIPICAS DE TRIGGERS ............................................................................ 5
1.6 SINTAXIS ESENCIAL DE UN TRIGGER .............................................................................. 5
2. MICROSOFT SQL SERVER ........................................................................................................ 6
2.1 Qué es Microsoft SQL Server .......................................................................................... 6
2.2 A quién le sirve Microsoft SQL Server ............................................................................ 6
2.3 Tipos de Licencia ............................................................................................................. 7
2.4 Por qué elegir Microsoft SQL Server .............................................................................. 7
.................................................................................................................................. 8
1. Restaurar Backup “NEPTUNO” ................................................................................................ 8
2. Creación de Base de Datos “BDRegistro” ............................................................................ 11
3. Crear la tabla “Pais_Eliminado” en la base de datos BDRegistro con los mismos campos de
la tabla de la cual vamos a almacenar los registros eliminados. ......................................... 12
4. Usar la base de datos “NEPTUNO” – Crear TRIGGER .......................................................... 13
5. Eliminar un registro de la tabla País en la base de datos “NEPTUNO”. ................................ 15
6. Verificar si se guardaron los datos en nuestra nueva tabla – BDRegistro .......................... 16
.................................................................................................................................... 17
................................................................................................................................................... 18
Ilustración 1: Conexión de Servidor a SQL Server 2012 ...................................................................... 8
Ilustración 2: Restaurando Base de Datos "Neptuno” – Parte 01....................................................... 8
Ilustración 3: Restaurando Base de Datos "Neptuno" - Parte 02 ....................................................... 9
Ilustración 4: Restaurando Base de Datos "Neptuno" - Parte 03 ....................................................... 9
Ilustración 5: Restaurando Base de Datos "Neptuno" - Parte 04 ..................................................... 10
Ilustración 6: Restaurando Base de Datos - Parte 05 ........................................................................ 10
Ilustración 7: Creación de Nueva Base de Datos "BDRegistro"......................................................... 11
Ilustración 8: Ejecutando Consulta.................................................................................................... 11
Ilustración 9: Creando Nueva Consulta en "BDRegistro" .................................................................. 12
Ilustración 10 Ejecutando Consulta para Crear Tabla "Pais_Eliminado" .......................................... 12
Ilustración 11: Usando base de datos "NEPTUNO" ........................................................................... 13
Ilustración 12: Creando Trigger "TR_CATEGORIA_ELIMINADA" ....................................................... 13
Ilustración 13: TRIGGER TR_CATEGORIA_ELIMINADA ...................................................................... 14
Ilustración 14: Corroborando Trigger creado en Tabla País.............................................................. 15
Ilustración 15: Eliminando Registro en Tabla Pais - "NEPTUNO" ..................................................... 15
Ilustración 16: Verificando datos guardado en la tabla Pais_Eliminado ........................................... 16
MANUAL DE TRIGGER EN SQL SERVER

1. TRIGGER

1.1 CONCEPTO:
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.

1.2 USO:

Los disparadores pueden emplearse para muchas cosas diferentes, incluyendo:

 El mantenimiento de restricciones de integridad complejas, que no sean posibles con


las restricciones declarativas definidas en el momento de crear la tabla.

 La auditoría de la información contenida en una tabla, registrando los cambios


realizados y la identidad del que los llevó a cabo.

 El aviso automático a otros programas de que hay que llevar a cabo una determinada
acción, cuando se realiza un cambio en una tabla

1.3 UN TRIGGER TIENE ASOCIADO:

 EL EVENTO: se refiere a la operación que se efectúa sobre la tabla (INSERT, DELETE o


UPDATE).

 EL MOMENTO: Se refiere a cuándo se dispara el trigger en relación con el evento. Sus


posibles valores son BEFORE y AFTER*.

 EL TIPO: Indica el número de veces que el cuerpo del trigger se ejecuta: por la
operación en conjunto (trigger de operación) o por cada fila procesada (trigger de
fila). En este último caso se debe adicionar la cláusula FOR EACH ROW

4
MANUAL DE TRIGGER EN SQL SERVER

1.4 Limitaciones de los triggers

 Solo se pueden aplicar a una tabla específica, es decir, un trigger no sirve para dos o
más tablas.

 El trigger se crea en la base de datos que de trabajo pero desde un trigger puedes
hacer referencia a otras bases de datos.

 Un Trigger devuelve resultados al programa que lo desencadena de la misma forma


que un Stored Procedure aunque no es lo más idóneo, para impedir que una
instrucción de asignación devuelva un resultado se puede utilizar la sentencia SET
NOCOUNT al principio del Trigger.

1.5 APLICACIONES TIPICAS 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.

1.6 SINTAXIS ESENCIAL DE UN TRIGGER

CREATE TRIGGER trigger_name


ON { table | view }
[ WITH <dml_trigger_option> [ ,...n ] ]
{ FOR | AFTER | INSTEAD OF }
{ [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] }
AS { sql_statement [ ; ] [ ,...n ]

Trigger_name es el nombre dado al trigger. Es un objeto de la base de datos y su nombre


debe ser único.

AFTER indica que el desencadenador sólo se activa cuando todas las operaciones
especificadas en la instrucción SQL desencadenadora se han ejecutado correctamente.
Además, todas las acciones referenciales en cascada y las comprobaciones de restricciones
deben ser correctas para que este desencadenador se ejecute.
AFTER es el valor predeterminado cuando sólo se especifica la palabra clave FOR.

5
MANUAL DE TRIGGER EN SQL SERVER

Los desencadenadores AFTER no se pueden definir en las vistas.

INSTEAD OF
Especifica que se ejecuta el desencadenador en vez de la instrucción SQL
desencadenadora, por lo que se suplantan las acciones de las instrucciones
desencadenadoras.
Como máximo, se puede definir un desencadenador INSTEAD OF por cada instrucción
INSERT, UPDATE o DELETE en cada tabla o vista. No obstante, en las vistas es posible
definir otras vistas que tengan su propio desencadenador INSTEAD OF.
Los desencadenadores INSTEAD OF no se pueden utilizar en vistas actualizables que usan
WITH CHECK OPTION.
{ [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] }
Especifica las instrucciones de modificación de datos que activan el desencadenador
cuando se intenta en esta tabla o vista. Se debe especificar al menos una opción. En la
definición del desencadenador se permite cualquier combinación de estas opciones, en
cualquier orden.
Para los desencadenadores INSTEAD OF, no se permite la opción DELETE en tablas que
tengan una relación de integridad referencial que especifica una acción ON DELETE en
cascada. Igualmente, no se permite la opción UPDATE en tablas que tengan una relación
de integridad referencial que especifica una acción ON UPDATE en cascada.

2. MICROSOFT SQL SERVER

2.1 Qué es Microsoft SQL Server


Microsoft SQL Server es un sistema para la gestión de bases de datos producido
por Microsoft basado en el modelo relacional cuya principal función es la de almacenar y
consultar datos solicitados por otras aplicaciones, sin importar si están en la misma
computadora, si están conectadas a una red local o si están conectadas a través de
internet (plataforma “Cloud-Ready”).

2.2 A quién le sirve Microsoft SQL Server

Básicamente, cualquier usuario que desee mantener ordenados/organizados datos o


información con el fin de acceder a ellos más adelante
 Industrias
 Bancos
 Compañías manufactureras
 Empresas
 Instituciones

6
MANUAL DE TRIGGER EN SQL SERVER

2.3 Tipos de Licencia


 Enterprise
 Business intelligence
 Standard
 Web
 Express con advanced services
 Express con herramientas
 Express

2.4 Por qué elegir Microsoft SQL Server

 Seguridad
 Integridad de Datos
 Concurrencia

7
MANUAL DE TRIGGER EN SQL SERVER

1. Restaurar Backup “NEPTUNO”


Abrimos el Programa SQL Server 2012
 Conectar

Ilustración 1: Conexión de Servidor a SQL Server 2012

Restaurar Backup Neptuno

Ilustración 2: Restaurando Base de Datos "Neptuno” – Parte 01

8
MANUAL DE TRIGGER EN SQL SERVER

 Dispositivo

Ilustración 3: Restaurando Base de Datos "Neptuno" - Parte 02

 Agregar
 Aceptar

Ilustración 4: Restaurando Base de Datos "Neptuno" - Parte 03

9
MANUAL DE TRIGGER EN SQL SERVER

 Buscar Archivo a Restaurar


 Aceptar

Ilustración 5: Restaurando Base de Datos "Neptuno" - Parte 04

 Aceptar

Ilustración 6: Restaurando Base de Datos - Parte 05

10
MANUAL DE TRIGGER EN SQL SERVER

2. Creación de Base de Datos “BDRegistro”


 Nueva Consulta / Master

Ilustración 7: Creación de Nueva Base de Datos "BDRegistro"

 Crear la Base de datos “BDRegistro”


 Ejecutar

Ilustración 8: Ejecutando Consulta

11
MANUAL DE TRIGGER EN SQL SERVER

3. Crear la tabla “Pais_Eliminado” en la base de datos BDRegistro con los mismos


campos de la tabla de la cual vamos a almacenar los registros eliminados.
 BDRegistro
 Nueva Consulta

Ilustración 9: Creando Nueva Consulta en "BDRegistro"

 Ejecutar Consulta

Ilustración 10 Ejecutando Consulta para Crear Tabla "Pais_Eliminado"

12
MANUAL DE TRIGGER EN SQL SERVER

4. Usar la base de datos “NEPTUNO” – Crear TRIGGER

 Usar base de datos “NEPTUNO”

Ilustración 11: Usando base de datos "NEPTUNO"

 Crear Trigger “TR_CATEGORIA_ELIMINADA”

Ilustración 12: Creando Trigger "TR_CATEGORIA_ELIMINADA"

13
MANUAL DE TRIGGER EN SQL SERVER

GO

--se crea el trigger con el nombre TR_CATEGORIA_ELIMINADA

CREATE TRIGGER TR_CATEGORIA_ELIMINADA

--la tabla que afecta

ON dbo.Pais

--la operación q realiza el trigger After (ocurre después de que pasa la eliminación)

AFTER DELETE

AS

BEGIN

--las sentencias sql que ejecuta el trigger

INSERT INTO BDRegistrar.dbo.Pais_Eliminado

SELECT * FROM DELETED d

END

GO

Ilustración 13: TRIGGER TR_CATEGORIA_ELIMINADA

14
MANUAL DE TRIGGER EN SQL SERVER

Ilustración 14: Corroborando Trigger creado en Tabla País

5. Eliminar un registro de la tabla País en la base de datos “NEPTUNO”.


Se ejecutará el Trigger y el Registro eliminado se almacenará en la tabla Pais_Eliminado
de la base de datos BDRegistro

Ilustración 15: Eliminando Registro en Tabla Pais - "NEPTUNO"

15
MANUAL DE TRIGGER EN SQL SERVER

6. Verificar si se guardaron los datos en nuestra nueva tabla – BDRegistro

Ilustración 16: Verificando datos guardado en la tabla Pais_Eliminado

16
MANUAL DE TRIGGER EN SQL SERVER

http://es.slideshare.net/dinastiajosedejesus/triggers-o-disparadores?related=1

http://www-oei.eui.upm.es/Asignaturas/BD/BD/docbd/prac/sintaxisSQLServer.pdf

http://www.snip.gob.ni/xdc/SQL/Desencadenadores.pdf

http://static.schoolrack.com/files/14960/103289/Tutorial_de_SQL_Server_2005_Express.pdf

17
https://mega.co.nz/#!kQkk2LhL!sL9x3UNfMjoxOvH78HDZNDiIkZzW88a0c1rTs8ZiGU4

18

También podría gustarte