Ejemplos de Triggers en SQL Server
Clasificado en Informática
Escrito el en español con un tamaño de 3,33 KB
Trigger para mostrar un mensaje al insertar un usuario
2. Crear un disparador que al momento de ingresar un registro en la tabla "Usuario" muestre el mensaje "Se ingresó un usuario".
GO create TRIGGER TR_T7_1
ON Usuario
FOR INSERT
AS
BEGIN
PRINT 'SE INGRESO UN USUARIO'
END
Deshabilitar un Trigger
4. Deshabilite el Trigger.
ALTER TABLE Usuario
DISABLE TRIGGER TR_T7_1
Trigger para mostrar un mensaje al modificar un usuario
5. Crear un disparador el cual después de modificar un registro a la tabla "Usuario" muestre el mensaje "Se modificó un usuario".
GO CREATE TRIGGER TR_T7_2
ON Usuario
AFTER update
AS
BEGIN
PRINT 'Se modificó un usuario'
END
Ejecutar el Trigger de modificación
6. Realice el evento para que se ejecute las instrucciones del trigger.
update Usuario set Nombre = 'Pepe Maiz'
where Nombre = 'GUSTAVO JIMENEZ LEAL'
SELECT * FROM Usuario !
Trigger para mostrar un mensaje en lugar de eliminar un registro
8. Realizar un trigger el cual en lugar de eliminar un registro a la tabla alumno solo muestre el mensaje "Se eliminó un registro".
GO CREATE TRIGGER TR_T7_3
ON usuario
INSTEAD OF delete
AS
BEGIN
PRINT 'SE ELIMINO REGISTRO'
END
Eliminar un registro y ejecutar el Trigger
9. Elimine un registro
DELETE FROM Usuario
WHERE Nombre= 'Pepe Maiz' /
Trigger para registrar información de usuario y fecha al insertar un empleado
2. Crear un disparador que al momento de ingresar un registro en la tabla agregue el usuario y fecha en una nueva tabla con la siguiente estructura:
GO CREATE TRIGGER TR_T7_4
ON empleado
FOR INSERT
AS
BEGIN
INSERT INTO Empleado_Info values(SUSER_SNAME(), getdate())
END
Trigger para registrar cambios en la tabla Empleado
3. Agregar un disparador que guarde aquellos cambios realizados en la tabla "Empleado" en la siguiente tabla:
create table Empleado_Log(
Descripcion varchar(200))
go create trigger TR_T7_5
on Empleado
for update
as
begin
declare @Descripcion varchar (200) set @Descripcion=' Se modifico '
if update(Id_Empleado) select @Descripcion=@Descripcion + ' el Id Empleado de: '+cast(D.Id_Empleado as varchar (10))+' a '+ cast(I.Id_Empleado as varchar(10)) from deleted as D, inserted as I
if update(Id_Empleado) select @Descripcion=@Descripcion + ' el Id Empleado de: '+cast(D.Id_Empleado as varchar (10))+' a '+ cast(I.Id_Empleado as varchar(10)) from deleted as D, inserted as I
if update(Nombre) select @Descripcion=@Descripcion + ' el Nombre de: '+D.Nombre +' a '+I.Nombre from deleted as D, inserted as I
if update(Departamento) select @Descripcion=@Descripcion + ' el Departamento de: ' + D.Departamento + ' a '+ I.Departamento from deleted as D, inserted as I insert into Empleado_Log(Descripcion) values(@Descripcion)
end
/div>
end