KB2950209 - 修正: 開始オフセットが SQL Server の Substring 関数の文字列の長さより大きい場合のアクセス違反

適用先
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

現象

Microsoft SQL Server 2012 Service Pack 1 (SP1) 累積更新プログラム 1 (CU1) 以降のバージョンまたは SQL Server 2014 で Substring (式、開始値、長さ) 関数を使用することを想定しています。 式の長さが 8000 より大きく、開始が式の長さより大きい場合、アクセス違反が発生します。 さらに、次のエラーが表示されます。

注

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

解決策

この問題は、次の SQL Server の累積的な更新プログラムで最初に修正されました。
修正プログラムの適用後、start が値式の文字数より大きい場合、長さ 0 の式が返されます。

SQL Server 2012 SP2 の累積的な更新プログラム 1 /en-us/help/2976982

SQL Server 2014 用の累積的な更新プログラム 2 /en-us/help/2967546

SQL Server 2012 SP1 用の累積的な更新プログラム 10 /en-us/help/2954099

SQL Server 用の累積的な更新プログラムについて

SQL Server 用の新しい累積的な更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正プログラムが含まれています。 SQL Server の最新の累積的な更新プログラムを確認してください。

      

状態

Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。