クイックスタート: Visual Studio Code を使用して Azure SQL データベースまたは Azure SQL Managed Instance に接続してクエリの実行

適用対象:Azure SQL データベースAzure SQL Managed Instance

Visual Studio Code は、Linux、macOS、Windows に対応するグラフィカル コード エディターです。 また、SQL Server、Azure SQL Database、Azure SQL Managed Instance、Azure Synapse Analytics のデータベースに対してクエリを実行するための mssql 拡張機能などの拡張機能をサポートしています。 このクイックスタートでは、Visual Studio Code を使用して Azure SQL Database または Azure SQL Managed Instance に接続し、Transact-SQL ステートメントを実行してデータのクエリ、挿入、更新、および削除を実行する方法について説明します。

前提条件

  • Azure SQL Database または Azure SQL Managed Instance のデータベース。 以下のいずれかのクイック スタートを使用して、Azure SQL Database でデータベースを作成し、構成できます。

    アクション Azure SQL データベース Azure SQL Managed Instance
    作成 ポータル ポータル
    CLI CLI
    PowerShell PowerShell
    構成 サーバーレベルの IP ファイアウォール規則 仮想マシン (VM) からの接続
    オンプレミスからの接続
    データの読み込み クイックスタートごとに読み込まれた Wide World Importers Wide World Importers を復元する
    GitHubBACPAC ファイルから Adventure Works を復元またはインポートする

    重要

    この記事のスクリプトは、Adventure Works データベースを使用するように記述されています。 SQL マネージド インスタンスの場合は、Adventure Works データベースをインスタンス データベースにインポートするか、Wide World Importers データベースを使用するようにこの記事のスクリプトを修正する必要があります。

Visual Studio Code のインストール

最新バージョンの Visual Studio Code がインストールされていることを確認します。 インストールのガイダンスについては、「Visual Studio Code のインストール」を参照してください。

Visual Studio Code を構成する

Windows

次の手順に従って mssql 拡張機能を読み込みます。

  1. Visual Studio Code を開きます。
  2. [拡張機能] ウィンドウ (または Ctrl + Shift + X) を開きます。
  3. sql を検索し、SQL Server (mssql) 拡張機能をインストールします。

その他のインストール ガイダンスについては、「Visual Studio Code 用の mssql」を参照してください。

macOS

macOS では、mssql 拡張機能で使用される .NET Core の前提条件として、OpenSSL をインストールする必要があります。 使用するターミナルを開き、次のコマンドを入力して、brewOpenSSL をインストールします。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew update
brew install openssl
mkdir -p /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/
ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/

Linux (Ubuntu)

次の手順に従って mssql 拡張機能を読み込みます。

  1. Visual Studio Code を開きます。
  2. [拡張機能] ウィンドウ (または Ctrl + Shift + X) を開きます。
  3. sql を検索し、SQL Server (mssql) 拡張機能をインストールします。

その他のインストール ガイダンスについては、「Visual Studio Code 用の mssql」を参照してください。

サーバーの接続情報を取得する

Azure SQL Database に接続するために必要な接続情報を取得します。 後の手順で、完全修飾サーバー名またはホスト名、データベース名、およびログイン情報が必要になります。

  1. Azure portal にサインインします。

  2. [SQL データベース][SQL Managed Instance] ページに移動します。

  3. [概要] ページで、SQL データベースの場合は [サーバー名] の横の完全修飾サーバー名を確認し、SQL マネージド インスタンスの場合は [ホスト] の横の完全修飾サーバー名を確認します。 サーバー名またはホスト名をコピーするには、名前をポイントして [コピー] アイコンを選択します。

言語モードを SQL に設定

Visual Studio Code で、言語モードを [SQL] に設定し、mssql コマンドと T-SQL IntelliSense を有効にします。

  1. 新しい Visual Studio Code ウィンドウを開きます。

  2. Ctrl + N キーを押すと、新しいプレーン テキスト ファイルが開きます。

  3. ステータス バーの右下隅の [プレーン テキスト] を選択します。

  4. [言語モードの選択] ドロップダウン メニューを開き、[SQL] を選択します。

データベースに接続する

Visual Studio Code を使用して、サーバーへの接続を確立します。

重要

続行する前に、サーバーおよびサインインの情報が準備できていることを確認します。 接続プロファイル情報の入力を開始した後は、Visual Studio Code からフォーカスを移動すると、プロファイルの作成をやり直さなければならなくなります。

  1. Visual Studio Code で、Ctrl + Shift + P キー (または F1 キー) を押してコマンド パレットを開きます。

  2. connect を入力し、MS SQL:Connect を選択します。

  3. [接続プロファイルの作成] を選択します。

  4. プロンプトに従って、新しいプロファイルの接続プロパティを指定します。 それぞれの値を指定した後、Enter キーを押して続行します。

    プロパティ 提案された値 説明
    サーバー名 完全修飾サーバー名 例: mynewserver20170313.database.windows.net
    データベース名 mySampleDatabase 接続先のデータベース。
    認証 SQL ログイン このチュートリアルでは、SQL 認証を使用します。
    ユーザー名 ユーザー名 サーバーを作成するために使用するサーバー管理者アカウントのユーザー名。
    パスワード (SQL ログイン) Password サーバーを作成するために使用するサーバー管理者アカウントのパスワード。
    パスワードを保存しますか? はい、いいえ 毎回パスワードを入力したくない場合は、 [はい] を選択します。
    このプロファイルの名前を入力してください プロファイル名 (mySampleProfile など) 保存されたプロファイルによって、以降のログインでは、より速く接続できるようになります。

    成功した場合、プロファイルが作成され接続されたことを示す通知が表示されます。

クエリ データ

次の SELECT Transact-SQL ステートメントによるクエリを実行して、カテゴリごとに上位 20 個の製品を照会します。

  1. エディター ウィンドウで、次の SQL クエリを貼り付けます。

    SELECT pc.Name AS CategoryName,
        p.name AS ProductName
    FROM [SalesLT].[ProductCategory] pc
    INNER JOIN [SalesLT].[Product] p
        ON pc.ProductCategoryId = p.ProductCategoryId;
    
  2. Ctrl + Shift + E キーを押してクエリを実行し、Product および ProductCategory テーブルからの結果を表示します。

    Screenshot of query to retrieve data from 2 tables.

データの挿入

次の INSERT Transact-SQL ステートメントを実行して、SalesLT.Product テーブルに新しい製品を追加します。

  1. 前のクエリを次のクエリに置き換えます。

    INSERT INTO [SalesLT].[Product] (
        [Name],
        [ProductNumber],
        [Color],
        [ProductCategoryID],
        [StandardCost],
        [ListPrice],
        [SellStartDate]
     )
     VALUES (
        'myNewProduct',
        123456789,
        'NewColor',
        1,
        100,
        100,
        GETDATE()
     );
    
  2. Ctrl + Shift + E キーを押して、Product テーブルに新しい行を挿入します。

データの更新

次の UPDATE Transact-SQL ステートメントを実行して、追加された製品を更新します。

  1. 前のクエリを次のクエリに置き換えます。

    UPDATE [SalesLT].[Product]
    SET [ListPrice] = 125
    WHERE Name = 'myNewProduct';
    
  2. Ctrl + Shift + E キーを押して、Product テーブルの指定した行を更新します。

データの削除

次の DELETE Transact-SQL ステートメントを実行して、新しい製品を削除します。

  1. 前のクエリを次のクエリに置き換えます。

    DELETE FROM [SalesLT].[Product]
    WHERE Name = 'myNewProduct';
    
  2. Ctrl + Shift + E キーを押して、Product テーブルの指定した行を削除します。

次のステップ