現象
Microsoft SQL Server 2014 を使用していることを前提としています。 ネイティブにコンパイルされたストアドプロシージャでdatepart (曜日) を使用しようとすると、アクセス違反が発生し、接続が終了します。 さらに、次のエラーが表示されます。
現在のコマンドで重大なエラーが発生しました。 結果は破棄する必要があります。
原因
この問題は、SQL Server 2014 の問題が原因で発生します。 引数を char 引数と共に 使用すると、 datetimeoffsetへの暗黙的な変換が導入されます。 ネイティブストアドプロシージャは datetimeoffsetをサポートしていません。
解決方法
修正プログラムを適用した後、SQL Server は、char 引数をdatetime2 に変換して、ネイティブストアドプロシージャおよび datetimeoffset の通常のストアドプロシージャと一定の折りたたみを実現するための新しいロジックを導入します。この問題は、SQL Server の次の累積的な更新プログラムで最初に修正されました。
SQL Server 2014 の累積更新プログラム1 /en-us/help/2931693
SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムを確認します。
回避策
この問題を回避するには、サポートされているdatetime 型に明示的に変換します。
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。