次のJavaシナリオでは、Where句を使用してMysqlデータベースからの特定のテーブル名に反復を実行し、テーブル内に存在するすべてのカラム名をリスト表示する、コンポーネント5つのジョブを作成します。
Talendでサポートされているテクノロジーの詳細は、Talendコンポーネントを参照してください。
-
次のコンポーネントを[Palette] (パレット)からデザインワークスペースにドロップします: tMysqlConnection、tMysqlTableList、tMysqlColumnList、tFixedFlowInput、およびtLogRow。
-
[OnSubjobOk]リンクを使用してtMysqlConnectionをtMysqlTableListに接続します。
-
[Iterate] (反復処理)リンクを使用して、tMysqlTableList、tMysqlColumnList、およびtFixedFlowInputを接続します。
-
[Row Main] (行メイン)リンクを使用して、tFixedFlowInputをtLogRowに接続します。
-
デザインワークスペースで、tMysqlConnectionを選択し、[Component] (コンポーネント)タブをクリックして基本設定を定義します。
-
[Basic settings] (基本設定)ビューで、データベース接続の詳細を手動で設定するか、または、メタデータDB接続エントリーとしてローカルに保存済みの場合は、コンテキスト変数リストから選択し、[Ctrl] + [Space]を使用して対応するフィールドをクリックします。
メタデータの詳細は、『 Talend Studio ユーザーガイド』を参照してください。
この例では、customersというMysqlデータベースに接続します。
-
デザインワークスペースで、tMysqlTableListを選択し、[Component] (コンポーネント)タブをクリックして基本設定を定義します。
-
[Component list] (コンポーネントリスト)で、複数の接続が使用されている場合は、関連するMysql接続コンポーネントを選択します。
-
対応するフィールドの適切な構文を使用してWhere句を入力し、コンソールに表示するテーブル名を反復処理します。
このシナリオでは、反復処理を行うテーブルにはcustomerという名前が付けられています。
-
デザインワークスペースでtMysqlColumnListを選択し、[Component] (コンポーネント)タブをクリックして基本設定を定義します。
-
[Component list] (コンポーネントリスト)で、複数の接続が使用されている場合は、関連するMysql接続コンポーネントを選択します。
-
[Table name] (テーブル名)フィールドに、カラム名を表示するDBテーブルの名前を入力します。
このシナリオでは、[customer]というDBテーブルに存在するカラムをリスト表示します。
-
デザインワークスペースでtFixedFlowInputを選択し、[Component] (コンポーネント)タブをクリックして基本設定を定義します。
-
[Schema] (スキーマ)を[Built-In] (組み込み)に設定し、[Edit Schema] (スキーマを編集)の横にある3点[...]ボタンをクリックして、入力として使用するデータを定義します。このシナリオでは、スキーマは2つのカラムで設定され、最初はテーブル名、2番目はカラム名になります。
-
[OK]をクリックしてダイアログボックスを閉じ、メッセージで指示されたら変更をプロパゲートすることを許可します。[Basic settings] (基本設定)ビューの[Values] (値)パネルに、定義済みのカラムが表示されます。
-
2つの定義された各カラムの[Value] (値)セルをクリックし、[Ctrl] + [Space]を押してグローバル変数リストにアクセスします。
-
グローバル変数リストで、TableNameとColumnNameにそれぞれ((String)globalMap.get("tMysqlTableList_1_CURRENT_TABLE"))と((String)globalMap.get("tMysqlColumnList_1_COLUMN_NAME"))を選択します。
-
デザインワークスペースで、tLogRowを選択します。
-
[Component] (コンポーネント)タブをクリックし、必要に応じてtLogRowの基本設定を定義します。
-
ジョブを保存し、[F6]を押して実行します。
DBテーブルの名前がすべてのカラム名と共にコンソールに表示されます。