El propósito principal de un disparo es la validación de datos . Existen factores desencadenantes de inserción, que se ejecutan cuando se inserta una fila en la tabla . Eliminar y actualizar desencadena ejecutar el borrado de filas y actualizaciones de campo. Por lo general , un diseñador de bases de datos que escribiría un disparador que devuelve un estado de éxito /fracaso de Boole. El disparador mantiene la integridad de los datos , haciendo que no haya valores válidos están en la mesa y no se realizan operaciones no válidas. Sin embargo , los disparadores pueden devolver un conjunto de resultados al igual que cualquier procedimiento almacenado SQL .
Inesperado comportamiento
desencadenantes que devuelve un conjunto de resultados puede provocar un comportamiento impredecible en las aplicaciones que no son diseñado para esperar los datos de nuevo . A veces , el autor del disparo, por lo general el administrador de base de datos, no puede comunicarse con el programador de la aplicación .
Solución para desencadenar errores Resultset
Gire el SQL opción de servidor ' resultados no permitir disparadores ' ON de la siguiente manera : ' show advanced options '
sp_configure , 1reconfiguresp_configure ' resultados no permitir disparadores " , 1reconfigure
cogerá ningún desencadenante desconocido devolver un conjunto de resultados y mostrar el mensaje de error correspondiente.
Importante Nota de la versión
los " resultados no permitir desencadenantes de " opción está disponible en Microsoft SQL Server 2008 R2. Sin embargo , se elimina en las versiones posteriores de SQL Server.