次の方法で共有


クイック スタート: SQL Server Management Studio (SSMS) を使用して Azure SQL Managed Instance に接続してクエリを実行する

適用対象:Azure SQL Managed Instance

SQL Server Management Studio (SSMS) を使用して Azure SQL Managed Instance に接続し、いくつかの Transact-SQL (T-SQL) コマンドを実行します。

Microsoft Entra ID はAzure Active Directory (Azure AD) の新しい名前ですが、既存の環境の中断を防ぐために、UI フィールド、接続プロバイダー、エラー コード、コマンドレットなど、ハードコーディングされた一部の要素でAzure AD が残ります。 この記事では、2 つの名前は交換可能です。

この記事では、次の手順を示します。

  • データベースへの接続
  • データベースを作成する
  • 新しいデータベースにテーブルを作成する
  • 新しいテーブルに行を挿入する
  • 新しいテーブルに対してクエリを実行し、結果を表示する
  • クエリ ウィンドウ テーブルを使用して接続プロパティを確認する

[前提条件]

Azure SQL Managed Instance に接続する

18.6 より前の SSMS のリリースでは、Microsoft Entra 多要素認証 (MFA) を使用してデータベース エンジンに対して認証を行いません。 MFA を引き続き使用するには、 SSMS 18.6 以降のバージョンが必要です。

  1. SQL Server Management Studio (SSMS) を起動します。 SSMS を初めて実行すると、[ サーバーへの接続 ] ウィンドウが開きます。 開いていない場合は、 オブジェクト エクスプローラー>Connect>Database エンジンを選択して手動で開くことができます。

    オブジェクト エクスプローラーの [接続] リンクのスクリーンショット。

  2. 受信セキュリティ規則を確認し、Azure SQL Managed Instance にアクセスできることを確認します。 初めて接続する場合は、Azure SQL Managed Instance のリソース グループのネットワーク セキュリティ グループ に新しい受信セキュリティ規則を作成する必要があります。 パブリック エンドポイントの構成の詳細については、「 Azure SQL Managed Instance でのパブリック エンドポイントの構成」を参照してください。

  3. [ サーバーへの接続 ] ダイアログ ボックスが表示されます。 次の情報を入力してください。

    Setting 推奨値 詳細
    サーバーの種類 データベース エンジン [データベース エンジン] を選択します (通常は既定のオプション)。
    サーバー名 完全修飾サーバー名 Azure SQL Managed Instance の名前を入力します。
    認証
    Microsoft Entra ID1
    -パスワード
    -統合
    - 多要素認証 (MFA)
    多要素認証 (MFA) を使用した Microsoft Entra 認証をお勧めします。 Microsoft Entra 多要素認証の使用を参照してください。
    - サービス プリンシパル Azure SQL を使用した Microsoft Entra サービス プリンシパルを参照してください。
    - マネージド ID Microsoft Entra for Azure SQL のマネージド ID に関するページを参照してください。

    マネージド ID を使用して SSMS を使用して SQL マネージド インスタンスに接続するには、Azure VM が必要です。 「Windows VM のシステム割り当てマネージド ID を使用して Azure SQL にアクセスする」を参照してください
    - 既定値 既定のオプションは、パスワードレスで非インターアクティブな Microsoft Entra 認証モードを使用して接続するときに使用できます。
    SQL Server 認証 Azure SQL の SQL Server 認証 を使用して接続します。
    ログイン サーバー アカウントのユーザー ID サーバーの作成に使用したサーバー アカウントのユーザー ID。
    パスワード サーバー アカウントのパスワード サーバーの作成に使用したサーバー アカウントのパスワード。
    データベース名 これは既定のままにしておくことができます。
    暗号化2 暗号化方法 接続の暗号化レベルを選択します。 既定値は 必須です
    信頼サーバー証明書 [Trust Server Certificate] サーバー証明書の検証をバイパスするには、このオプションをオンにします。 既定値は False (オフ) であり、信頼された証明書を使用してセキュリティを強化します。
    証明書のホスト名 サーバーのホスト名 このオプションで指定する値は、サーバー証明書に期待される異なる CN または SAN を指定するために使用されます。

    1 Azure SQL では、Windows 認証方法はサポートされていません。 詳細については、 Azure SQL 認証に関するページを参照してください。 多要素認証 (MFA) を使用した Microsoft Entra 認証をお勧めします。

    2 既定値は、SQL Server Management Studio (SSMS) 20 では 必須 です。 Azure SQL Database と Azure SQL Managed Instance には、Strict (SQL Server 2022 および Azure SQL) 暗号化を使用する必要があります。 インスタンスで Force Strict Encryption が有効になっている場合は、SQL Server に Strict (SQL Server 2022 および Azure SQL) 暗号化を使用できます。 SQL Server Management Studio 21 では、これは Strict (最小 SQL Server 2022 および Azure SQL) と呼ばれます。

    [ オプション] を選択して、追加の接続オプションを変更することもできます。 接続オプションの例としては、接続先のデータベース、接続タイムアウト値、ネットワーク プロトコルがあります。 この記事では、すべてのオプションの既定値を使用します。

    Azure SQL の接続ダイアログのスクリーンショット。

  4. すべてのフィールドを完了したら、[ 接続] を選択します。

  5. Azure SQL Managed Instance の接続が成功したことを確認するには、 オブジェクト エクスプローラー 内で、サーバー名、SQL Server のバージョン、およびユーザー名が表示されているオブジェクトを展開して探索します。 これらのオブジェクトは、サーバーの種類によって異なります。

    オブジェクト エクスプローラーでの Azure SQL Managed Instance への接続のスクリーンショット。

接続の問題のトラブルシューティング

  • MFA で Microsoft Entra を使用しているときにブラウザーが接続できない場合は、Tools>Options>Azure Services>Azure Cloud に移動し、[システムの既定の Web ブラウザーを使用する] または [Web アカウント マネージャーを使用する] の値を変更できます。 詳細については、「 オプション (Azure Services)」を参照してください。

  • Azure SQL Managed Instance で接続の問題が発生する可能性があります。 接続の問題のトラブルシューティングの詳細については、「 接続の問題とその他のエラーのトラブルシューティング」を参照してください。

  • Azure SQL Managed Instance を操作するときに発生する接続エラーと一時的なエラーを回避、トラブルシューティング、診断、軽減できます。 詳細については、「 一時的な接続エラーのトラブルシューティング」を参照してください。

データベースを作成する

次の手順に従って、 TutorialDB という名前のデータベースを作成しましょう。

  1. オブジェクト エクスプローラーでサーバー インスタンスを右クリックし、[新しいクエリ] を選択します。

    [新しいクエリ] リンクを示すスクリーンショット。

  2. 次の T-SQL コード スニペットをクエリ ウィンドウに貼り付けて、既定の設定で新しいデータベースを作成します。

    IF NOT EXISTS (SELECT name
                   FROM sys.databases
                   WHERE name = N'TutorialDB')
        CREATE DATABASE [TutorialDB];
    GO
    
  3. [ 実行 ] を選択するか、キーボードの F5 キーを押して、クエリを実行します。

    クエリが完了すると、TutorialDBのデータベースの一覧に新しい データベースが表示されます。 表示されない場合は、[ データベース ] ノードを右クリックし、[ 最新の情報に更新] を選択します。

新しいデータベースにテーブルを作成する

このセクションでは、新しく作成した TutorialDB データベースにテーブルを作成します。 クエリ エディターは引き続き master データベースのコンテキストにあるため、次の手順を実行して、接続コンテキストを TutorialDB データベースに切り替えます。

  1. 次に示すように、データベースのドロップダウン リストで、目的のデータベースを選択します。

    データベース コンテキストを変更する方法を示すスクリーンショット。

  2. 次の T-SQL コード スニペットをクエリ ウィンドウに貼り付けます。

    -- Create a new table called 'Customers' in schema 'dbo'
    -- Drop the table if it already exists
    IF OBJECT_ID('dbo.Customers', 'U') IS NOT NULL
        DROP TABLE dbo.Customers;
    GO
    
    -- Create the table in the specified schema
    CREATE TABLE dbo.Customers
    (
        CustomerId INT NOT NULL PRIMARY KEY, -- primary key column
        Name NVARCHAR (50) NOT NULL,
        Location NVARCHAR (50) NOT NULL,
        Email NVARCHAR (50) NOT NULL
    );
    GO
    
  3. [ 実行 ] を選択するか、キーボードの F5 キーを押して、クエリを実行します。

クエリが完了すると、Customersのテーブルの一覧に新しい テーブルが表示されます。 テーブルが表示されない場合は、オブジェクト エクスプローラーで >Tables ノードを右クリックし、[最新の情報に更新] を選択します。

[新しいテーブル] を示すスクリーンショット。

新しいテーブルに行を挿入する

次に、作成した Customers テーブルにいくつかの行を挿入します。 次の T-SQL コード スニペットをクエリ ウィンドウに貼り付け、[ 実行] を選択します。

-- Insert rows into table 'Customers'
INSERT INTO dbo.Customers (
    [CustomerId],
    [Name],
    [Location],
    [Email]
)
VALUES
    (1, N'Orlando', N'Australia', N''),
    (2, N'Keith', N'India', N'keith0@adventure-works.com'),
    (3, N'Donna', N'Germany', N'donna0@adventure-works.com'),
    (4, N'Janet', N'United States', N'janet1@adventure-works.com');
GO

テーブルのクエリを実行して結果を表示する

クエリの結果は、クエリ テキスト ウィンドウの下に表示されます。 Customers テーブルにクエリを実行し、挿入された行を表示するには、次の T-SQL コード スニペットをクエリ ウィンドウに貼り付けて、[実行] を選択します。

-- Select rows from table 'Customers'
SELECT * FROM dbo.Customers;

クエリ結果は、テキストが入力された領域の下に表示されます。

結果の一覧を示すスクリーンショット。

次のいずれかのオプションを選択して、結果の表示方法を変更することもできます。

クエリ結果を表示するための 3 つのオプションのスクリーンショット。

  • 最初のボタンは、次のセクションの画像に示すように、 テキスト ビューに結果を表示します。
  • 中央のボタンは、既定のオプションである グリッド ビューで結果を表示します。
  • 3 番目のボタンを使用すると、既定で拡張子が .rpt されているファイルに結果を保存できます。

クエリ ウィンドウ テーブルを使用して接続プロパティを確認する

接続プロパティに関する情報は、クエリの結果で確認できます。 前の手順で前述したクエリを実行した後、クエリ ウィンドウの下部にある接続プロパティを確認します。

  • 接続先のサーバーとデータベース、およびユーザー名を決定できます。

  • また、クエリの実行時間と、前に実行したクエリによって返された行の数を表示することもできます。

    接続プロパティのスクリーンショット。

リソースをクリーンアップする

サンプル TutorialDB データベースを削除しましょう。 次の T-SQL コードを貼り付けて 実行します。

IF EXISTS (SELECT name
           FROM sys.databases
           WHERE name = N'TutorialDB')
    DROP DATABASE [TutorialDB];
GO