Trigger

Solo disponible en BuenasTareas
  • Páginas : 4 (847 palabras )
  • Descarga(s) : 0
  • Publicado : 23 de febrero de 2010
Leer documento completo
Vista previa del texto
Triggers en Transact SQL

    Un trigger( o desencadenador) es una clase especial de procedimiento almacenado que se ejecuta automáticamente cuando se produce un evento en el servidor de bases dedatos.

    SQL Server proporciona los siguientes 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). Estoseventos corresponden principalmente a instrucciones CREATE, ALTER y DROP de Transact-SQL, y a determinados procedimientos almacenados del sistema que ejecutan operaciones de tipo DDL.

Trigger DML.    Los 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 unatabla o vista.

    La sintaxis general de un trigger es la siguiente.


CREATE TRIGGER <Trigger_Name, sysname, Trigger_Name> ON <Table_Name, sysname,Table_Name> AFTER <Data_Modification_Statements, , INSERT,DELETE,UPDATE> AS BEGIN -- SET NOCOUNT ON added to prevent extra result setsfrom -- interfering with SELECT statements. SET NOCOUNT ON; -- Insert statements for trigger here END |

    Antes de ver un ejemplo esnecesario conocer las tablas inserted y deleted.

    Las instrucciones de triggers DML utilizan dos tablas especiales denominadas inserted y deleted. SQL Server 2005 crea y administra automáticamente ambastablas. La estructura de las tablas inserted y deleted es la misma que tiene la tabla que ha desencadenado la ejecución del trigger.

    La primera tabla (inserted) solo está disponible en las...
tracking img