Поделиться через


Настройка вложенных триггеров (параметр конфигурации сервера)

Область применения: SQL Server

В этом разделе описывается настройка параметра конфигурации сервера nested triggers в SQL Server с помощью SQL Server Management Studio или Transact-SQL. Параметр nested triggers определяет, допустимо ли каскадирование триггеров AFTER. Под этим подразумевается выполнение действия, вызывающего срабатывание другого триггера, который может инициировать другой триггер, и т. д. Когда параметр nested triggers принимает значение 0, триггеры AFTER не могут вызывать каскадные действия. Если параметр nested triggers равен 1 (значение по умолчанию), триггеры AFTER могут выполнять каскадные действия глубиной до 32 уровней. Триггеры INSTEAD OF могут быть вложенными вне зависимости от этого параметра.

В этом разделе

Перед началом

Безопасность

Разрешения

Разрешения на выполнение хранимой процедуры sp_configure без параметров или только с первым параметром по умолчанию предоставляются всем пользователям. Для выполнения процедуры sp_configure с обоими параметрами для изменения параметра конфигурации или запуска инструкции RECONFIGURE необходимо иметь разрешение ALTER SETTINGS на уровне сервера. Разрешение ALTER SETTINGS неявным образом предоставлено предопределенным ролям сервера sysadmin и serveradmin .

Использование среды SQL Server Management Studio

Настройка параметра nested triggers

  1. В обозревателе объектовщелкните сервер правой кнопкой мыши и выберите пункт Свойства.

  2. На странице Дополнительно выберите значение True (по умолчанию) или False для параметра Разрешить триггерам активировать другие триггеры.

Использование Transact-SQL

Настройка параметра nested triggers

  1. Соединитесь с ядром СУБД .

  2. На панели «Стандартная» нажмите Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере описывается использование процедуры sp_configure для задания значения параметра nested triggers равным 0.

USE AdventureWorks2022;  
GO  
EXEC sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE ;  
GO  
EXEC sp_configure 'nested triggers', 0 ;  
GO  
RECONFIGURE;  
GO  
  

Дополнительные сведения см. в разделе Параметры конфигурации сервера (SQL Server).

Дальнейшие действия. После настройки параметра nested triggers

Параметр вступает в силу немедленно, без перезапуска сервера.

См. также

Создание вложенных триггеров
RECONFIGURE (Transact-SQL)
Параметры конфигурации сервера (SQL Server)
sp_configure (Transact-SQL)