互換性レベルを使用して、SQL Serverデータベースをアップグレードします
-
16-10-2019 - |
質問
- SQL Server 2008で実行されているSQL Serverデータベースのバックアップを作成しました。
- そのバックアップをSQL Server 2012インスタンスに復元しました。
- 復元されたインスタンスで互換性レベルをSQL Server 2012(110)に設定しました。
これはデータベースに何をしますか?
たとえば、それをしますか
- 非互換性について貯蔵手順を調べます
- データベース内のすべてのデータページに更新を引き起こす
- 将来アクセスされるときにデータページの更新を引き起こす
- 互換性のない構文を使用するストアドプロシージャまたはビューが実行される場合、将来のエラーを引き起こすエラー
オンラインでの本のどこにあるのか、どこで、詳細を見つけることができますか?
解決
互換性レベルは、SQLステートメントでサポートされている言語構文を単に変更します。これにより、すべての実行計画が期限切れになり、強制的に再コンパイルされます。データストレージエンジンや、データがディスクに書き込まれる方法とは何の関係もありません。
データベースがSQL 2012インスタンスに添付されると、SQL 2012ストレージ形式になり、古いバージョンのSQLに戻すことはできません(互換性レベルが設定されていても)。
@sharkが提供するリンク(http://msdn.microsoft.com/en-us/library/bb510680%28v=sql.110%29.aspx)コメントでは、このテーマに関する追加の読み取り値を提供します。
所属していません dba.stackexchange