現象
次のような状況で問題が発生します。
-
SQL Server 2014 または2016には、主キー制約が指定されている複数のテーブルがあります。
-
これらのテーブルに対して 連鎖チェーン を作成するには、[削除連鎖アクションで外部キー制約を使用します。
-
各テーブルに対して、削除後のトリガーを作成します。
-
親テーブルから行を削除します。 これにより、削除後のトリガーと ON DELETE CASCADE アクションチェーンがトリガーされます。
このシナリオでは、トリガーが間違った順序で発生する可能性があります。
解決方法
この問題は、SQL Server の次の累積的な更新プログラムで修正されています。
SQL Server 2016 RTM の累積更新プログラム5
SQL Server 2016 SP1 の累積更新プログラム2
SQL Server 2014 SP2 の累積更新プログラム5
累積更新プログラム 11 SQL Server 2014 Service Pack 1
SQL Server 用の新しい累積的な更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとセキュリティの修正が含まれています。 SQL Server の最新の累積的な更新プログラムを確認します。
状態マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
関連情報
Microsoft でソフトウェアの更新について説明する 用語 について説明します。