現象
次のような状況で問題が発生します。
-
Microsoft SQL Server 2012 の id 列を含むパーティションテーブルを持っている。
-
テーブルはインデックス付きのビューによって参照されます。
-
ALTER partition関数を使用して、テーブルのパーティションを分割します。
このシナリオでは、アクセス違反が発生する可能性があります。
原因
この問題が発生するのは、SQL Server 2012 では通常、パーティションを分割したときに id 列が増加または減少するかどうかを確認するためです。 ただし、この操作は失敗します。 さらに、パーティションテーブルを分割した場合、この確認は必須の操作ではありません。
解決方法
累積的な更新プログラムの情報
SQL Server 2012 Service Pack 1 (SP1) の累積更新プログラム2
この問題の修正プログラムは、累積的な更新プログラム2で最初にリリースされました。SQL Server 2012 Service Pack 1 用の累積的な更新プログラムパッケージの入手方法の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
2790947 SQL Server 2012 Service Pack 1 の累積的な更新プログラムパッケージ2注: ビルドは累積的であるため、それぞれの新しい修正プログラムには、以前の SQL Server 2012 Service Pack 1 修正プログラムに含まれていたすべての修正プログラムとセキュリティ修正プログラムが含まれています。 この修正プログラムを含む最新の修正プログラムを適用することを検討することをお勧めします。 詳細については、次のマイクロソフト サポート技術情報番号をクリックしてください。
2772858 SQL Server 2012 Service Pack 1 がリリースされた後にリリースされた SQL Server 2012 ビルド
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
回避策
この問題を回避するには、インデックス付きのビューを削除します。 次に、パーティションを分割した後でインデックス付きビューを作成します。