149 - Disparador (modificar) |
Los triggers pueden modificarse y eliminarse.
Al modificar la definición de un disparador se reemplaza la definición existente del disparador por la nueva definición.
La sintaxis general es la siguiente:
alter trigger NOMBREDISPARADOR NUEVADEFINICION;
Asumiendo que hemos creado un disparador llamado "dis_empleados_borrar" que no permitía eliminar más de 1 registro de la tabla empleados; alteramos el disparador, para que cambia la cantidad de eliminaciones permitidas de 1 a 3:
alter trigger dis_empleados_borrar on empleados for delete as if (select count(*) from deleted)>3--antes era 1 begin raiserror('No puede borrar mas de 3 empleados',16, 1) rollback transaction end;
Se puede cambiar el evento del disparador. Por ejemplo, si creó un disparador para "insert" y luego se modifica el evento por "update", el disparador se ejecutará cada vez que se actualice la tabla.