151 - Disparador (with encryption)


Hasta el momento hemos aprendido que un trigger se crea sobre una tabla (o vista), especificando el momento de ejecución (after o instead of), para un evento (inserción, eliminación o actualización).

Podemos encriptar los triggers para evitar que sean leídos con "sp_helptext". Para ello debemos agregar al crearlos la opción "with encryption" luego del nombre de la tabla o vista:

 create triggre NOMBREDISPARADOR
  on NOMBRETABLAoVISTA
  with encryption
  MOMENTODEDISPARO--after o instead of
  ACCION-- insert, update, delete
  as 
    SENTENCIAS

El siguiente disparador se crea encriptado:

 create trigger DIS_empleados_insertar
  on empleados
  with encryption
  after insert
 as
  if (select seccion from inserted)='Gerencia'
  begin
    raiserror('No puede ingresar empleados en la sección "Gerencia".', 16, 1)
    rollback transaction
  end;

Si ejecutamos el procedimiento almacenado del sistema "sp_helptext" seguido del nombre del trigger creado anteriormente, SQL Server mostrará un mensaje indicando que tal disparador ha sido encriptado.


Retornar