DataGrip で XML のデータ をクエリ
DataGrip は、SQL 開発者がデータベースへのクエリ、作成、管理を行えるデータベース IDE です。CData JDBC Driver for XML と組み合わせることで、DataGrip からリアルタイムXML のデータを操作できます。この記事では、DataGrip で XML のデータ への接続を確立し、テーブルエディタを使用して XML のデータ を読み込む方法を説明します。
XML 用の新しいドライバー定義を作成
以下のステップでは、DataGrip で XML 用の新しいデータソースを作成する方法を説明します。
- DataGrip で、File -> New -> Project をクリックしてプロジェクト名を入力します。
- Database Explorer で、プラスアイコン()をクリックして Driver を選択します。
- Driver タブで以下を設定します。
- Name をわかりやすい名前に設定します(例:"CData XML Driver")。
- Driver Files を適切な JAR ファイルに設定します。ファイルを追加するには、プラス()をクリックし、「Add Files」を選択して、ドライバーのインストールディレクトリ内の「lib」フォルダに移動し、JAR ファイル(例:cdata.jdbc.xml.jar)を選択します。
- Class を cdata.jdbc.xml.XML.jar に設定します。
また、詳細タブでは、ドライバーのプロパティや、VM Options、VM environment、VM home path、DBMS などの設定を変更できます。 - ほとんどの場合、Expert options で DBMS type を「Unknown」に変更して、ネイティブの SQL Server クエリ(Transact-SQL)を回避してください。これを行わないと、無効な関数エラーが発生する可能性があります。
- 「Apply」をクリックし、「OK」をクリックして接続を保存します。
XML への接続を設定
- 接続を保存したら、プラス()をクリックし、「Data Source」→「CData XML Driver」を選択して、新しい XML データソースを作成します。
- 新しいウィンドウで、JDBC URL を使用して XML への接続を設定します。
組み込みの接続文字列デザイナー
JDBC URL の構築には、XML JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。
java -jar cdata.jdbc.xml.jar接続プロパティを入力し、接続文字列をクリップボードにコピーします。
データソースを認証するには、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。 データプロバイダーはXML API を双方向データベーステーブルとしてモデル化し、XML ファイルをread-only ビュー(ローカルファイル、人気のクラウドサービスに格納されたファイル、およびFTP サーバー)としてモデル化します。 HTTP Basic、Digest、NTLM、OAuth、およびFTP を含む主な認証スキームはサポートされています。認証のガイドについては、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。
URI と認証値を設定した後で、DataModel を設定することでデータの構造によりよくマッチするようデータの抽象化を調整できます。
DataModel プロパティはデータがどのようにテーブルとして抽象化されるかを制御するプロパティであり、次の基本的な設定を調整します。
- Document(デフォルト):XML データのトップレベルのドキュメントビューをモデル化します。データプロバイダーは入れ子化した要素をデータの集約値として返します。
- FlattenedDocuments:入れ子化したドキュメントとその親を結合して単一のテーブルに入力します。
- Relational:個別の関連テーブルを階層化されたデータから返します。テーブルは主キーと、親ドキュメントにリンクする外部キーを含みます。
リレーショナルな抽象化の設定についての詳細は、「XML データのモデリング」セクションを参照してください。次の例で使用されているサンプルデータも存在します。 このデータには、人名、その人たちが所有する車、車に施されたさまざまなメンテナンスに関する情報が含まれます。
- URL を接続文字列に設定します。例:
jdbc:xml:URI=C:/people.xml;DataModel=Relational;
- 「Apply」と「OK」をクリックして接続文字列を保存します。
これで、Data Explorer にデータソースが表示されます。
XML に対して SQL クエリを実行
JDBC Driver を介してアクセス可能な XML のエンティティ(テーブルとして利用可能)を参照するには、データソースを展開します。
クエリを実行するには、任意のテーブルを右クリックして「New」→「Query Console」を選択します。
Console で、実行したい SQL クエリを記述します。例:
SELECT [people].[personal.age] AS age, [people].[personal.gender] AS gender,
[people].[personal.name.first] AS first_name, [people].[personal.name.last] AS last_name, [vehicles].[model], FROM
[people] JOIN [vehicles] ON [people].[_id] = [vehicles].[people_id]
CData JDBC Driver for XML の30日間の無料トライアルをダウンロードして、DataGrip でリアルタイムXML のデータを操作してみてください。ご不明な点があれば、サポートチームにお問い合わせください。