次の方法で共有


クイック スタート: MySQL で Data API ビルダーを使用する

このクイック スタートでは、ローカル MySQL データベースを対象とする一連の Data API ビルダー構成ファイルをビルドします。

前提条件

ヒント

または、GitHub Codespaces でこのクイックスタートを開き、すべての開発者の前提条件が既にインストールされています。 独自の Azure サブスクリプションを持ち込むだけです。 GitHub アカウントには、ストレージとコア時間のエンタイトルメントが無償で含まれています。 詳細については、「 GitHub アカウントのストレージとコア時間を含む」を参照してください。

GitHub Codespace で開く

Data API Builder CLI をインストールする

Microsoft.DataApiBuilder NuGet から .NET ツールとしてパッケージをインストールします。

  1. 引数を指定して の最新バージョンをMicrosoft.DataApiBuilderインストールするには、 を--global使用dotnet tool installします。

    dotnet tool install --global Microsoft.DataApiBuilder
    

    注意

    パッケージが既にインストールされている場合は、代わりに を使用してパッケージを dotnet tool update更新します。

    dotnet tool update --global Microsoft.DataApiBuilder
    
  2. 引数を使用して--global、ツールが インストールdotnet tool listされていることを確認します。

    dotnet tool list --global
    

ローカル データベースを構成する

まず、ローカル データベースを構成して実行します。 その後、サンプル データを含む新しいコンテナーをシードできます。

  1. Docker Hubからコンテナー イメージのmysql:8最新のコピーを取得します。

    docker pull mysql:8
    
  2. パスワードを設定し、ポート 3306 を発行して、Docker コンテナーを起動します。 をカスタム パスワードに置き換えます <your-password>

    docker run \
        --publish 3306:3306 \
        --env "MYSQL_ROOT_PASSWORD=<your-password>" \
        --detach \
        mysql:8
    
  3. 任意のデータ管理環境を使用して、ローカル データベースに接続します。 たとえば、 MySQL WorkbenchAzure Data StudioVisual Studio Code 用の MySQL シェルなどがありますが、これらに限定されません。

    ヒント

    Docker Linux コンテナー イメージに既定のネットワークを使用している場合、接続文字列は になりますServer=localhost;Port=3306;Uid=root;Pwd=<your-password>;。 を、前に設定したパスワードに置き換えます <your-password>

  4. bookshelfしいデータベースをCreateし、残りのクエリにデータベースを使用します。

    CREATE DATABASE IF NOT EXISTS bookshelf;
    
    USE bookshelf;
    
  5. dbo.authorsしいテーブルをCreateし、テーブルに基本的なデータをシード処理します。

    CREATE TABLE IF NOT EXISTS authors
    (
        id INT NOT NULL PRIMARY KEY,
        first_name VARCHAR(100) NOT NULL,
        middle_name VARCHAR(100),
        last_name VARCHAR(100) NOT NULL
    );
    
    INSERT INTO authors VALUES
        (01, 'Henry', NULL, 'Ross'),
        (02, 'Jacob', 'A.', 'Hancock'),
        (03, 'Sydney', NULL, 'Mattos'),
        (04, 'Jordan', NULL, 'Mitchell'),
        (05, 'Victoria', NULL, 'Burke'),
        (06, 'Vance', NULL, 'DeLeon'),
        (07, 'Reed', NULL, 'Flores'),
        (08, 'Felix', NULL, 'Henderson'),
        (09, 'Avery', NULL, 'Howard'),
        (10, 'Violet', NULL, 'Martinez');
    

構成ファイルを作成する

DAB CLI を使用してベースライン構成ファイルをCreateします。 次に、現在の資格情報を使用して開発構成ファイルを追加します。

  1. を使用して一般的な構成ファイルをdab initCreateします。 最初のセクションの--connection-stringデータベース 接続文字列に 引数を追加します。 を、このガイドで前に設定したパスワードに置き換えます <your-password> 。 また、値をDatabase=bookshelf接続文字列に追加します。

    dab init --database-type "mysql" --host-mode "Development" --connection-string "Server=localhost;Port=3306;Database=bookshelf;Uid=root;Pwd=<your-password>;"
    
  2. を使用して Author エンティティを dab add追加します。

    dab add Author --source "authors" --permissions "anonymous:*"
    
  3. 現在の dab-config.json 構成ファイルを確認します。 ファイルには、1 つのエンティティ、REST API エンドポイント、およびGraphQL エンドポイントを使用した API のベースライン実装が含まれている必要があります。

ローカル データベースを使用して API をテストする

次に、Data API ビルダー ツールを起動して、開発中に構成ファイルがマージされていることを検証します。

  1. を使用して dab start ツールを実行し、エンティティの API エンドポイントを作成します。

    dab start
    
  2. ツールの出力には、実行中の API に移動するために使用するアドレスが含まれている必要があります。

          Successfully completed runtime initialization.
    info: Microsoft.Hosting.Lifetime[14]
          Now listening on: <http://localhost:5000>
    info: Microsoft.Hosting.Lifetime[0]
    

    ヒント

    この例では、アプリケーションはポート 5000 で実行されていますlocalhost。 実行中のアプリケーションのアドレスとポートが異なる場合があります。

  3. まず、 に GET 要求 /api/Authorを発行して、API を手動で試します。

    ヒント

    この例では、URL は になります https://localhost:5000/api/Author。 この URL には、Web ブラウザーを使用して移動できます。

  4. 次に、 の Swagger ドキュメント ページに /swagger移動します。

    ヒント

    この例では、URL は になります https://localhost:5000/swagger。 ここでも、Web ブラウザーを使用してこの URL に移動できます。

次のステップ