現象
Microsoft SQL Server 2008 R2 または Microsoft SQL Server 2012 のscrollopt引数と共に、cursor ストアドプロシージャsp_cursoropen実行することを前提とします。 さらに、次の条件が満たされていることを前提としています。
-
Scrollopt引数がSTATICまたはFAST_FORWARDとして設定されていません。
-
引数 stmt には、ビューに対して実行されるクエリが含まれています。
-
ビューでは、リンクサーバーを使用してテーブルからデータを取得します。
-
テーブルに16個のキー列を含む複合インデックスがあります。
この状況では、次のエラー メッセージが表示されます。
現在のコマンドで重大なエラーが発生しました。
解決方法
累積的な更新プログラムの情報
SQL Server 2012 の累積更新プログラム9
この問題の修正プログラムは、累積的な更新プログラム9で最初にリリースされました。SQL Server 2012 用の累積更新プログラムパッケージの入手方法の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
2867319 SQL Server 2012 の累積更新プログラムパッケージ9注: ビルドは累積的であるため、それぞれの新しい修正プログラムには、以前の SQL Server 2012 fix release に含まれていたすべての修正プログラムとセキュリティ修正プログラムが含まれています。 この修正プログラムを含む最新の修正プログラムを適用することを検討することをお勧めします。 詳細については、次のマイクロソフト サポート技術情報番号をクリックしてください。
2692828 SQL Server 2012 がリリースされた後にリリースされた SQL Server 2012 ビルド
SQL Server 2012 SP1 の累積更新プログラム4
この問題の修正プログラムは、累積的な更新プログラム4で最初にリリースされました。SQL Server 2012 SP1 用の累積的な更新プログラムパッケージの入手方法の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
2833645 SQL Server 2012 SP1 の累積更新プログラム4注: ビルドが累積的であることを考慮して、各新しい修正プログラムには、以前の SQL Server 2012 SP1 修正プログラムに含まれていたすべてのホットフィックスとセキュリティ修正が含まれています。 この修正プログラムを含む最新の修正プログラムを適用することを検討することをお勧めします。 詳細については、以下のサポート技術情報番号をクリックしてください。
2772858 SQL Server 2012 Service Pack 1 がリリースされた後にリリースされた SQL Server 2012 ビルド
SQL Server 2008 R2 Service Pack 2 の累積更新プログラム6
この問題の修正プログラムは、累積的な更新プログラム6で最初にリリースされました。この累積的な更新プログラムパッケージを SQL Server 2008 R2 Service Pack 2 で入手する方法の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
2830140 SQL Server 2008 R2 Service Pack 2 の累積更新プログラムパッケージ6注: ビルドは累積的であるため、各新しい修正プログラムには、以前の SQL Server 2008 R2 Service Pack 2 fix release に含まれていたすべての修正プログラムとセキュリティ修正プログラムが含まれています。 この修正プログラムを含む最新の修正プログラムを適用することを検討することをお勧めします。 詳細については、次のマイクロソフト サポート技術情報番号をクリックしてください。
2730301 SQL Server 2008 R2 Service Pack 2 がリリースされた後にリリースされた SQL Server 2008 R2 ビルド
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
回避策
この問題を回避するには、複合インデックスに16個未満のキー列を使用します。
参照情報
[Cursor ストアドプロシージャ sp_cursoropenの詳細については、次の MSDN web サイトを参照してください。