Applies ToSQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

現象

次のような状況で問題が発生します。

  • "確定的" として宣言されている SQLCLR 関数があり、この関数を使用して、"定数の代わりとなる" 最適化を行うことができます。

  • SQLCLR 関数を指すシノニムがあります。

  • テーブル値関数 (TVF) は、シノニムを通じて SQLCLR 関数を参照します。

このシナリオでは、アプリケーションがこの TVF を照会すると、アクセス違反が発生し、 次のようなエラーメッセージが表示されることがあります。

メッセージ0、レベル11、状態0、行14

現在のコマンドで重大なエラーが発生しました。 結果は破棄する必要があります。

さらに、エラーメッセージが SQL Server のエラーログに記録されます。

解決方法

SQL Server の Service pack 情報

この問題は、SQL Server 用の次の service pack で修正されています。

       Service Pack 2 for SQL Server 2016

       Service Pack 3 for SQL Server 2014

サービスパックは累積されます。 Service Pack は累積的であり、 最新の Service Pack には新しい修正プログラムと共に、それ以前の Service Pack に含まれていたすべての修正プログラムが含まれています。 このサービスパックの最新の service pack と最新の累積的な更新プログラムを適用することをお勧めします。 最新の service pack をインストールする前に、以前のサービスパックをインストールする必要はありません。 最新の service pack と最新の累積的な更新プログラムの詳細については、次の記事の表1を参照してください。

SQL Server とそのコンポーネントのバージョン、エディション、および更新プログラムのレベルを確認する方法

状態

マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

関連情報

ソフトウェアの更新を説明するために Microsoft が使用する 用語について説明します。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。