MySQL Workbench で JSON Servicesをクエリする方法
JSON 用のODBC Driver のSQL Gateway を使用すると、MySQL インターフェースを通じて JSON services にクエリできます。以下の手順に従って、SQL Gateway のMySQL リモーティングサービスを起動し、MySQL Workbench でリアルタイムの JSON services を操作してみましょう。
JSON Servicesへの接続
まだ接続設定を行っていない場合は、データソース名(DSN)で必要な接続プロパティの値を入力してください。組み込みのMicrosoft ODBC データソースアドミニストレーターを使用してDSN を設定できます。これはドライバーインストールの最後のステップでもあります。Microsoft ODBC データソースアドミニストレーターを使用してDSN を作成・設定する方法については、ヘルプドキュメントの「はじめに」セクションを参照してください。
データソースへの認証については、ヘルプドキュメントの「はじめに」を参照してください。CData 製品は、JSON API を双方向データベーステーブルとして、JSON ファイルを読み取り専用ビュー(ローカル ファイル、一般的なクラウドサービスに保存されているファイル、FTP サーバー)としてモデル化します。HTTP Basic、Digest、NTLM、OAuth、FTP などの主要な認証スキームがサポートされています。詳細はヘルプドキュメントの「はじめに」を参照してください。
URI を設定して認証値を入力したら、DataModel を設定してデータ表現とデータ構造をより厳密に一致させます。
DataModel プロパティは、データをどのようにテーブルに表現するかを制御するプロパティで、次の基本設定を切り替えます。
- Document(デフォルト):JSON データのトップレベルのドキュメントビューをモデル化します。CData 製品 は、ネストされたオブジェクト配列を集約されたJSON オブジェクトとして返します。
- FlattenedDocuments:ネストされた配列オブジェクトと親オブジェクトを、単一テーブルに暗黙的に結合します。
- Relational:階層データから個々の関連テーブルを返します。テーブルには、親ドキュメントにリンクする主キーと外部キーが含まれています。
リレーショナル表現の設定についての詳細は、ヘルプドキュメントの「JSON データのモデリング」を参照してください。また、以下の例で使用されているサンプルデータも確認できます。データには人や所有する車、それらの車に行われたさまざまなメンテナンスサービスのエントリが含まれています。
Amazon S3 内のJSON への接続
URI をバケット内のJSON ドキュメントに設定します。さらに、次のプロパティを設定して認証します。
- AWSAccessKey:AWS アクセスキー(username)に設定。
- AWSSecretKey:AWS シークレットキーに設定。
Box 内のJSON への接続
URI をJSON ファイルへのパスに設定します。Box へ認証するには、OAuth 認証標準を使います。 認証方法については、Box への接続 を参照してください。
Dropbox 内のJSON への接続
URI をJSON ファイルへのパスに設定します。Dropbox へ認証するには、OAuth 認証標準を使います。 認証方法については、Dropbox への接続 を参照してください。ユーザーアカウントまたはサービスアカウントで認証できます。ユーザーアカウントフローでは、以下の接続文字列で示すように、ユーザー資格情報の接続プロパティを設定する必要はありません。 URI=dropbox://folder1/file.json; InitiateOAuth=GETANDREFRESH; OAuthClientId=oauthclientid1; OAuthClientSecret=oauthcliensecret1; CallbackUrl=http://localhost:12345;
SharePoint Online SOAP 内のJSON への接続
URI をJSON ファイルを含むドキュメントライブラリに設定します。認証するには、User、Password、およびStorageBaseURL を設定します。
SharePoint Online REST 内のJSON への接続
URI をJSON ファイルを含むドキュメントライブラリに設定します。StorageBaseURL は任意です。指定しない場合、ドライバーはルートドライブで動作します。 認証するには、OAuth 認証標準を使用します。
FTP 内のJSON への接続
URI をJSON ファイルへのパスが付いたサーバーのアドレスに設定します。認証するには、User およびPassword を設定します。
Google Drive 内のJSON への接続
デスクトップアプリケーションからのGoogle への認証には、InitiateOAuth をGETANDREFRESH に設定して、接続してください。詳細はドキュメントの「Google Drive への接続」を参照してください。
SQL Gateway の設定
SQL Gateway の概要を参照して、JSON services への接続を仮想MySQL データベースとしてセットアップしてください。クライアントからのMySQL リクエストをリッスンするMySQL リモーティングサービスを設定します。このサービスはSQL Gateway UI で設定できます。

MySQL Workbench から JSON をクエリ
以下の手順では、SQL Gateway で作成した仮想 JSON データベースにMySQL Workbench から接続し、基本的なクエリを発行してリアルタイムの JSON services を操作する方法を説明します。
SQL Gateway 経由で JSON に接続
- MySQL Workbench で、新しいMySQL 接続を追加するためにクリックします。
- 接続に名前を付けます(CData SQL Gateway for JSON)。
- SQL Gateway に接続するためのHostname、Port、Username パラメータを設定します。
- Store in Vault をクリックしてパスワードを設定・保存します。
- Test Connection をクリックして接続が正しく設定されていることを確認し、OK をクリックします。
NOTE: Username および Password は、SQL Gateway 用に作成したユーザーの資格情報を指します。
JSON Servicesをクエリ
- 作成した接続(CData SQL Gateway for JSON)を開きます。
- File -> New Query Tab をクリックします。
- SELECT * FROM `CData JSON Sys`.people; のようなSQL クエリを記述して JSON services を取得します。
MySQL Workbench からリアルタイムの JSON services にアクセスできるようになりました。MySQL データベースと同じ感覚で JSON を簡単に操作できます。CData ODBC Driver for JSON とCData SQL Gateway の30日間の無償トライアルをぜひお試しください。