SQL Server 2000/2005 から 2008 への移行時注意点

SQL Server のデータベースを 2000/2005 から 2008 へアップグレードした場合、「DBCC UPDATEUSAGE」を実行した方がいいんですね。知らなかったです。 *1

アップグレードされたデータベースで DBCC UPDATEUSAGE を実行することをお勧めします。

以前のバージョンの SQL Server では、テーブルおよびインデックスの行やページのカウント値が正しくならないことがありました。このため、SQL Server 2005 より前のバージョンで作成したデータベースには誤ったカウントが含まれている場合があります。データベースを SQL Server 2005 にアップグレードした後、DBCC UPDATEUSAGE を実行して無効なカウントを修正することをお勧めします。この DBCC ステートメントを実行すると、テーブルまたはインデックスのパーティションごとに、行、使用ページ、予約済みページ、リーフ ページ、およびデータ ページの数が修正されます。詳細については、「DBCC UPDATEUSAGE (Transact-SQL)」を参照してください。

詳細は、デタッチとアタッチを使用してデータベースをアップグレードする方法 (Transact-SQL) などを参照してください。

*1:今まで環境を変えるときは、アップグレードせずに DB を作り直してデータを丸ごと入れ直していたので、実は関係ないですが ^^;