Configuración del servidor: desencadenadores anidados

Se aplica a:SQL Server

En este artículo se describe cómo establecer la opción de configuración del servidor nested triggers en SQL Server mediante SQL Server Management Studio o Transact-SQL. La opción nested triggers controla si un disparador AFTER puede activarse en cascada. Es decir, realizar una acción que inicia otro desencadenador, que inicia otro desencadenador, y así sucesivamente. Cuando nested triggers se establece en 0, los AFTER desencadenadores no pueden propagarse en cascada. Al establecer nested triggers en 1 (el valor predeterminado), los desencadenadores AFTER se podrán propagar hasta un máximo de 32 niveles. Los INSTEAD OF desencadenadores pueden anidarse independientemente de la configuración de esta opción.

Permisos

De forma predeterminada, todos los usuarios tienen permisos de ejecución en sp_configure sin ningún parámetro o solo con el primero. Para ejecutar sp_configure con ambos parámetros y cambiar una opción de configuración, o para ejecutar la instrucción RECONFIGURE, un usuario debe tener el permiso ALTER SETTINGS en el servidor. El permiso ALTER SETTINGS está implícitamente asignado a los roles fijos de servidor sysadmin y serveradmin.

Uso de SQL Server Management Studio

  1. En el Explorador de objetos, haga clic con el botón derecho en un servidor y luego seleccione Propiedades.

  2. En la página Avanzado, establezca la opción Permitir que los activadores activen otros en Verdadero (el valor predeterminado) o Falso.

Uso de Transact-SQL

  1. Conéctese con el Motor de base de datos.

  2. En la barra Estándar, seleccione Nueva consulta.

  3. Copie y pegue el ejemplo siguiente en la ventana de consulta y seleccione Ejecutar. En este ejemplo se muestra cómo usar sp_configure para establecer el valor de la opción de nested triggers en 0.

    USE master;
    GO
    
    EXECUTE sp_configure 'show advanced options', 1;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'nested triggers', 0;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'show advanced options', 0;
    GO
    
    RECONFIGURE;
    GO
    

Para obtener más información, vea Opciones de configuración de servidor.

Siguiente paso: Una vez configurada la opción de desencadenadores anidados

La configuración surte efecto inmediatamente, sin necesidad de reiniciar el servidor.