trigger data base

12
TRIGGER TAL LER DE BASE DE D A TOS ANAHI CERROS CAMAC HO NANCY CUELLAR VILL ASTRIGO GUADALUPE ZORAIDA GONZALEZ RODRIGUEZ WILFREDO GUERRERO ESPINOZA JORGE LUIS CUELLAR MENDEZ ROBERTO ARMANDO RAMIREZ AMAY A

Upload: roberto-ramirez-amaya

Post on 13-Jun-2015

2.409 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Trigger Data Base

TRIG

GER

T AL L E

R D

E B

AS

E D

E D

AT

OS

AN

AH

I C

E RR

OS C

AM

AC

HO

NA

NC

Y CU

E L L AR

VI L

L AS T R

I GO

GU

AD

ALU

P E ZO

RAI D

A G

ON

ZA

L E Z

RO

DR

I GU

E Z

WI L

F RE D

O G

UE R

RE R

O E

S P I NO

ZA

J OR

GE L

UI S

CU

E L L AR

ME N

DE Z

RO

BE RT O

AR

MA

ND

O R

AM

I RE Z

AM

AYA

Page 2: Trigger Data Base

TRIGGER

Un trigger (o disparador) es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación.

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.

Sirven para dar seguridad en los procedimientos.

Page 3: Trigger Data Base

USOS

• Registrar, auditar y monitorear la actividad de cambio de datos

• Validar datos, cambiando o negando acciones como INSERT, UPDATE, DELETE en una tabla

• Preservar la consistencia y claridad de los datos ejecutando acciones relacionadas con otras tablas.

Page 4: Trigger Data Base

CUANDO USARLOS

Se requiere utilizar el trigger cuando se dan descuentos, bajas, usuarios, bitácoras de modificaciones, etc., en todas las base de datos.

Page 5: Trigger Data Base

DONDE USARLO

Cuando un usuario intenta modificar datos, mediante un evento de lenguaje de manipulación de datos y programación.

Page 6: Trigger Data Base

PORQUE USARLO

• Para mejorar la administración de la Base de datos.

• Para controlar que los usuarios ejecuten las sentencias de SQL.

• Para aplicar la reglas de negociación en las compañías.

Page 7: Trigger Data Base

COSAS QUE HAY QUE TENER EN CUENTA

- Solo se pueden aplicar a una tabla especifica, 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 mas idoneo, para impedir que una instrucción de asignación devuelva un resultado se puede utilizar la sentencia SET NOCOUNT al principio del Trigger. 

Page 8: Trigger Data Base

- Las siguientes instrucciones no se pueden utilizar en los triggers :

ALTER DATABASE CREATE DATABASE DISK INIT DISK RESIZE DROP DATABASE LOAD DATABASE LOAD LOG RECONFIGURE RESTORE DATABASE RESTORE LOG

Page 9: Trigger Data Base

VENTAJAS

Seguridad de los datos mejorada:

• Ofrecen chequeos de seguridad basada en valores

 

Integridad de los datos mejorada:

• Fuerzan restricciones dinámicas de integridad de datos y de integridad referencial.

• Aseguran que las operaciones relacionadas se realizan juntas de forma implícita.

• Respuesta instantánea ante un evento auditado

• Ofrece un mayor control sobre la B.D.

Page 10: Trigger Data Base

DESVENTAJAS

• Hay que definir con anticipación la tarea que realizara el trigger 

• Peligro de pérdida en Reorganizaciones

• Hay que programarlos para cada DBMS

• Un Trigger nunca se llama directamente.

• Los triggers no se desarrollan pensando en un solo registro, los mismos deben funcionar en conjunto con los datos ya que se disparan por operación y no por registro.

• Por funcionalidad, no hay que poner en uno solo las funciones de INSERT,UPDATE y DELETE.

• Utilizar moderadamente los triggers.

• No se pueden utilizar en tablas temporales

Page 11: Trigger Data Base

TIPOS DE TRIGGERS

• Trigger DML, se ejecutan cuando un usuario intenta modificar datos mediante un evento de lenguaje de manipulación de datos (DML). Los eventos DML son instrucciones INSERT, UPDATE o DELETE de una tabla o vista.

• Trigger DDL, se ejecutan en respuesta a una variedad de eventos de lenguaje de definición de datos (DDL). Estos eventos corresponden principalmente a instrucciones CREATE, ALTER y DROP de Transact-SQL, y a determinados procedimientos almacenados del sistema que ejecutan operaciones de tipo DDL.

Page 12: Trigger Data Base

ESTRUCTURA

CREATE TRIGGER <Nombre_Trigger>

ON <Nombre_Trabla o Vista>

AFTER (FOR)/ INSTEAD OF<Momento en que se ejecuta

el trigger>

(INSERT, UPDATE, DELETE) <Acciones>

AS

BEGIN

<Codigo con la estructura que se trabajara>

END

GO