データベースの互換性レベルの表示または変更

適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance

この記事では、SQL Server、Azure SQL Database、または Azure SQL Managed Instance で、SQL Server Management Studioまたは Transact-SQL を使用して、データベースの互換性レベルを表示または変更する方法について説明します。

データベース互換レベルを変更する前に、この変更がアプリケーションに及ぼす影響を理解しておく必要があります。 詳しくは、「ALTER DATABASE 互換性レベル」を参照してください。

この記事の Transact-SQL コード サンプルは AdventureWorks2022 または AdventureWorksDW2022 サンプル データベースを使用します。このサンプル データベースは、Microsoft SQL Server サンプルとコミュニティ プロジェクトのホーム ページからダウンロードできます。

アクセス許可

データベースに対する ALTER 権限が必要です。

SQL Server Management Studio を使用します。

SQL Server Management Studio (SSMS) を使用してデータベースの互換性レベルを表示または変更するには

  1. データベースをホストしている適切なサーバーまたはインスタンスに接続します。

  2. [オブジェクト エクスプローラー] でサーバー名を選択します。

  3. [データベース]を展開します。さらに、そのデータベースに応じて、ユーザー データベースを選択するか、または [システム データベース] を展開してシステム データベースを選択します。

    Note

    Azure SQL データベースでは、システム データベースの互換レベルを変更することはできません。

  4. データベースを右クリックし、[プロパティ] を選択します。

    [データベースのプロパティ] ダイアログ ボックスが表示されます。

  5. [ページの選択] ペインで [オプション] を選択します。

  6. [互換性レベル] ボックスの一覧に現在の互換性レベルが表示されます。

    互換性レベルを変更するには、一覧から別のオプションを選択します。 各データベース エンジン バージョンに使用できるオプションは、「ALTER DATABASE 互換性レベル (Transact-SQL)」ページに記載されています。

Transact-SQL の使用

Transact-SQL を使い、SSMS または Azure Data Studio を使用して、データベースの互換性レベルを表示または変更することができます。

データベースの互換性レベルを表示する

  1. データベースをホストしている適切なサーバーまたはインスタンスに接続します。

  2. [新しいクエリ] を開きます。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] を選択します。 この例では、AdventureWorks2022 サンプル データベースの互換性レベルを返します。

    USE AdventureWorks2022;
    GO
    SELECT compatibility_level
    FROM sys.databases WHERE name = 'AdventureWorks2022';
    GO
    

データベースの互換性レベルを変更する

  1. データベースをホストしている適切なサーバーまたはインスタンスに接続します。

  2. 標準バーから、 [新しいクエリ] を選択します。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] を選択します。 次の例では、AdventureWorks2022 データベースの互換性レベルを SQL Server 2022 (16.x) の互換性レベルである 160 に変更します。

    ALTER DATABASE AdventureWorks2022
    SET COMPATIBILITY_LEVEL = 160;
    GO