このトピックでは、SQL Server Management Studio または Transact-SQL を使用して、SQL Server 2014 で nested トリガー サーバー構成オプションを構成する方法について説明します。 nested triggers オプションは、AFTER トリガーを連鎖できるかどうかを制御します。 つまり、1 つの操作が別のトリガーを開始し、開始されたトリガーからさらに別のトリガーを開始するなどの動作ができるかどうかを制御します。 nested triggers を 0 に設定すると、AFTER トリガーは連鎖できません。 nested triggers を 1 (既定値) に設定すると、AFTER トリガーは 32 レベルまで連鎖できます。 INSTEAD OF トリガーは、このオプションの設定に関係なく入れ子にできます。
このトピックの内容
作業を開始する準備:
以下を使用して nested triggers オプションを構成するには:
始める前に
セキュリティ
アクセス許可
パラメーターなしで、または最初のパラメーターだけを指定して sp_configure を実行する権限は、既定ですべてのユーザーに付与されます。 両方のパラメーターを指定して sp_configure を実行し構成オプションを変更したり RECONFIGURE ステートメントを実行したりするには、ALTER SETTINGS サーバーレベル権限がユーザーに付与されている必要があります。 ALTER SETTINGS 権限は、 sysadmin 固定サーバー ロールと serveradmin 固定サーバー ロールでは暗黙のうちに付与されています。
SQL Server Management Studio を使用する
nested triggers オプションを構成するには
オブジェクト エクスプローラーで、サーバーを右クリックし、 [プロパティ] を選択します。
[詳細設定] ページで、 [トリガーから他のトリガーの起動を許可する] オプションを [True] (既定) または [False] に設定します。
Transact-SQL の使用
nested triggers オプションを構成するには
データベース エンジンに接続します。
[標準] ツール バーの [新しいクエリ] をクリックします。
次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。 この例では、 sp_configure を使用して、
nested triggers
オプションの値を0
に設定する方法を示します。
USE AdventureWorks2012 ;
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)