手順
-
tMysqlInputコンポーネント、tExtractXMLFieldコンポーネント、tFileOutputDelimitedコンポーネントを[Palette] (パレット)からデザインワークスペースにドロップします。
[Main] (メイン)リンクを使って、3つのコンポーネントを接続します。
-
tMysqlInputをダブルクリックして[Basic settings] (基本設定)ビューを表示し、プロパティを定義します。
-
[Repository] (リポジトリー)ツリービューに入力スキーマが既に保存されている場合は、まず[Property Type] (プロパティタイプ)リストから、次に[Schema] (スキーマ)リストから[Repository] (リポジトリー)を選択し、[Repository Content] (リポジトリーコンテンツ)ダイアログボックスを表示します。ここで、関連するメタデータを選択します。
[Repository] (リポジトリー)ツリービューにスキーマメタデータを保管する方法は、Talend Studioユーザーガイドをご覧ください。入力スキーマをローカルに保存していない場合は、 [Property Type] (プロパティタイプ)および[Schema] (スキーマ)フィールドで[Built-in] (組み込み)を選択し、データベース接続およびデータストラクチャー情報を手動で入力します。tMysqlInputの詳細は、tMysqlInputをご覧ください。
-
[Table Name] (テーブル名)フィールドに、この例のXMLデータcustomerdetailsを保持するテーブルの名前を入力します。
[Guess Query] (クエリーを推測)をクリックして、スキーマに対応するクエリーを表示します。
-
tExtractXMLFieldをダブルクリックして[Basic settings] (基本設定)ビューを表示し、プロパティを定義します。
-
[Sync columns] (カラムを同期)をクリックすると、先行コンポーネントからスキーマが取得されます。[Edit schema] (スキーマを編集)の横にある[...]ボタンをクリックして、スキーマを表示や変更できます。
[Mapping] (マッピング)テーブルの[Column] (カラム)フィールドには、定義されたスキーマが自動的に入力されます。
-
[Xml field] (XMLフィールド)リストで、XMLデータを抽出するカラムを選択します。このサンプルでは、XMLデータを保持するフィールドはCustomerDetailsと呼ばれます。
[Loop XPath query] (ループXPathクエリー)フィールドに、ループしてデータを取得するXMLツリーのノードを入力します。[Xpath query] (Xpathクエリー)カラムに、抽出するデータを保持するXMLフィールドのノード(このサンプルではCustomerName)を反転したコンマの間に入力します。
-
tFileOutputDelimitedをダブルクリックして[Basic settings] (基本設定)ビューを表示し、プロパティを定義します。
-
[File Name](ファイル名)フィールドに、抽出したデータを書き込む出力ファイルのパスを定義または参照します。
[Sync columns] (カラムを同期)をクリックすると、先行コンポーネントからスキーマが取得されます。必要であれば、[Edit schema] (スキーマを編集)の横にある[...]ボタンをクリックしてスキーマを表示します。
- ジョブを保存し、F6をクリックして実行します。
タスクの結果
tExtractXMLFieldは、定義されたデータベーステーブルのCustomerDetailsフィールドのノードCustomerName
の下にあるクライアント名を読み取って抽出します。