SlideShare a Scribd company logo
1 of 12
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.
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.
CUANDO USARLOS

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

Cuando un usuario intenta modificar
 datos, mediante un evento de lenguaje
 de manipulación de datos y
 programación.
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.
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.
- 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
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.
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
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.
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

More Related Content

What's hot (20)

Plsql y paquetes
Plsql y paquetesPlsql y paquetes
Plsql y paquetes
 
Bitácora de base de datos
Bitácora de base de datosBitácora de base de datos
Bitácora de base de datos
 
Ejemplo de Trigger en Mysql
Ejemplo de Trigger en MysqlEjemplo de Trigger en Mysql
Ejemplo de Trigger en Mysql
 
Aprenda SQL Server
Aprenda SQL ServerAprenda SQL Server
Aprenda SQL Server
 
Bases de datos en red y jerárquicas
Bases de datos en red y jerárquicasBases de datos en red y jerárquicas
Bases de datos en red y jerárquicas
 
Objeto SqlDataAdapter
Objeto SqlDataAdapterObjeto SqlDataAdapter
Objeto SqlDataAdapter
 
Tablespaces En Oracle
Tablespaces En OracleTablespaces En Oracle
Tablespaces En Oracle
 
Procedimientos almacenados
Procedimientos almacenadosProcedimientos almacenados
Procedimientos almacenados
 
Ejemplos de herramientas case más utilizadas
Ejemplos de herramientas case más utilizadasEjemplos de herramientas case más utilizadas
Ejemplos de herramientas case más utilizadas
 
Monitores-sistemas operativos
Monitores-sistemas operativosMonitores-sistemas operativos
Monitores-sistemas operativos
 
Principales características de PostgreSQL
Principales características de PostgreSQLPrincipales características de PostgreSQL
Principales características de PostgreSQL
 
Proyecto De Base De Datos
Proyecto De Base De DatosProyecto De Base De Datos
Proyecto De Base De Datos
 
1.1 tipos de datos abstractos
1.1 tipos de datos abstractos1.1 tipos de datos abstractos
1.1 tipos de datos abstractos
 
MYSQL
MYSQLMYSQL
MYSQL
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Recuperación de-datos-en-my sql
Recuperación de-datos-en-my sqlRecuperación de-datos-en-my sql
Recuperación de-datos-en-my sql
 
Arquitectura sql
Arquitectura sqlArquitectura sql
Arquitectura sql
 
Seguridad en Base de Datos
Seguridad en Base de DatosSeguridad en Base de Datos
Seguridad en Base de Datos
 
Seguridad de la base de datos
Seguridad de la base de datosSeguridad de la base de datos
Seguridad de la base de datos
 
Matrices en java
Matrices en javaMatrices en java
Matrices en java
 

Similar to Trigger Data Base

Similar to Trigger Data Base (20)

CREACION DE TRIGGERS.pptx
CREACION DE TRIGGERS.pptxCREACION DE TRIGGERS.pptx
CREACION DE TRIGGERS.pptx
 
Trigger activadores
Trigger activadoresTrigger activadores
Trigger activadores
 
Transacciones y sql procedural EN MySQL
Transacciones y sql procedural EN MySQLTransacciones y sql procedural EN MySQL
Transacciones y sql procedural EN MySQL
 
Teoria procedimientos almacenados
Teoria procedimientos almacenadosTeoria procedimientos almacenados
Teoria procedimientos almacenados
 
Trabajo grupal - Base de Datos
Trabajo grupal - Base de DatosTrabajo grupal - Base de Datos
Trabajo grupal - Base de Datos
 
Disparadores 1213820550525607-9
Disparadores 1213820550525607-9Disparadores 1213820550525607-9
Disparadores 1213820550525607-9
 
Disparadores - base de datos
Disparadores - base de datosDisparadores - base de datos
Disparadores - base de datos
 
Disparadores
DisparadoresDisparadores
Disparadores
 
Bd L8 Eq9 Pre Rosa Triggers
Bd L8 Eq9 Pre Rosa TriggersBd L8 Eq9 Pre Rosa Triggers
Bd L8 Eq9 Pre Rosa Triggers
 
Disparadores
DisparadoresDisparadores
Disparadores
 
Disparadores
DisparadoresDisparadores
Disparadores
 
Disparadores
DisparadoresDisparadores
Disparadores
 
Taller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL proceduralTaller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL procedural
 
TRIGGERS
TRIGGERSTRIGGERS
TRIGGERS
 
Disparadores
DisparadoresDisparadores
Disparadores
 
SQL SERVER Y MYSQL - ADMINISTRACIÓN DE BASE DE DATOS
SQL SERVER Y MYSQL - ADMINISTRACIÓN DE BASE DE DATOSSQL SERVER Y MYSQL - ADMINISTRACIÓN DE BASE DE DATOS
SQL SERVER Y MYSQL - ADMINISTRACIÓN DE BASE DE DATOS
 
TRIGGERS Cliente - servidor
TRIGGERS Cliente - servidorTRIGGERS Cliente - servidor
TRIGGERS Cliente - servidor
 
TRIGGERS-ACTIVADORES
TRIGGERS-ACTIVADORESTRIGGERS-ACTIVADORES
TRIGGERS-ACTIVADORES
 
TRIGGER-ACTIVADORES
TRIGGER-ACTIVADORESTRIGGER-ACTIVADORES
TRIGGER-ACTIVADORES
 
Semana 12 y 13 subprogramas triggers
Semana 12 y 13 subprogramas triggersSemana 12 y 13 subprogramas triggers
Semana 12 y 13 subprogramas triggers
 

More from Roberto Ramírez Amaya

More from Roberto Ramírez Amaya (6)

Contrato de servicios profesional de ai
Contrato de servicios profesional de aiContrato de servicios profesional de ai
Contrato de servicios profesional de ai
 
Proyecto Inventario
Proyecto Inventario Proyecto Inventario
Proyecto Inventario
 
Tendencias de la Tecnología de Información.
Tendencias de la Tecnología de Información.Tendencias de la Tecnología de Información.
Tendencias de la Tecnología de Información.
 
Evaluación financiera
Evaluación financieraEvaluación financiera
Evaluación financiera
 
Admon de la función informática
Admon de la función informáticaAdmon de la función informática
Admon de la función informática
 
Proceso Poder Legislativo Estatal y Federal
Proceso Poder Legislativo Estatal y FederalProceso Poder Legislativo Estatal y Federal
Proceso Poder Legislativo Estatal y Federal
 

Trigger Data Base

  • 1.
  • 2. 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.
  • 3. 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.
  • 4. CUANDO USARLOS Se requiere utilizar el trigger cuando se dan descuentos, bajas, usuarios, bitácoras de modificaciones, etc., en todas las base de datos.
  • 5. DONDE USARLO Cuando un usuario intenta modificar datos, mediante un evento de lenguaje de manipulación de datos y programación.
  • 6. 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.
  • 7. 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.
  • 8. - 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
  • 9. 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.
  • 10. 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
  • 11. 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.
  • 12. 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