現象
WITH CHECK OPTION 構文で定義されたビューに対して INSERT、UPDATE、または MERGE ステートメントを実行すると、ダンプファイルが生成され、Microsoft SQL Server は次のエラーメッセージをアプリケーションログに記録します。
<timestamp> サーバーが SPID < # > のユーザー要求を発生させると、重大な例外が生成されます。 SQL Server がこのセッションを終了しています。 ログディレクトリで生成されたダンプを使用して、製品サポートサービスに連絡します。 <タイムスタンプ> spid< # > SqlDumpExceptionHandler: Process < # > 生成された致命的な例外 c0000005 EXCEPTION_ACCESS_VIOLATION。 SQL Server がこのプロセスを終了しています
解決方法
累積的な更新情報
この問題は、SQL Server の次の累積的な更新プログラムで最初に修正されました。
SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムをダウンロードしてインストールすることをお勧めします。
詳細情報
この問題は、WITH チェックオプションの構文を使用して定義されたビューで INSERT、UPDATE、または MERGE ステートメントを実行した場合にのみ発生します。 次に例を示します。
UPDATE "<ViewName>" SET"<ColumnA>" = <NewValue> WHERE ("<ColumnB>" = <ColumnBValue>)
回避策
-
WITH CHECK OPTION 構文を使って定義されたビューの基になるテーブルに対して、INSERT、UPDATE、または MERGE ステートメントを実行します。
-
適切なビューを変更または再作成して、WITH CHECK OPTION 構文が使用されないようにします。
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。