tMysqlSPでストアドプロシージャーを使用して州ラベルを検索する - 7.3

MySQL

Version
7.3
Language
日本語 (日本)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > DBコンポーネント > MySQL
データガバナンス > サードパーティーシステム > DBコンポーネント > MySQL
データクオリティとプレパレーション > サードパーティーシステム > DBコンポーネント > MySQL

以下のジョブでは、Mysqlの2列のカラムを含むテーブルで、奇数の州IDにマッチする州ラベルを検索します。このオペレーションの実行にはストアドプロシージャーが使用されます。

Talendでサポートされているテクノロジーの詳細は、Talendコンポーネントを参照してください。

  • このサンプルで使用されている次のコンポーネントをドラッグ&ドロップします: tRowGeneratortMysqlSPtLogRow

  • [Row Main] (行メイン)リンクを使用してコンポーネントを接続します。

  • tRowGeneratorを使用して、奇数のID番号を生成します。コンポーネントをダブルクリックしてエディターを起動します。

  • [+]ボタンをクリックして、 生成するスキーマにカラムを追加します。

  • [Key] (キー)チェックボックスをオンにし、[Type] (タイプ)から[Int] (整数)を定義します。

  • [Length] (長さ)は最大2桁になります。

  • プリセット関数のsequenceを、ウィンドウの下のパラメーターをカスタマイズして使用します。

  • [step] (ステップ)[Value] (値)をこの例では1から2に変更します。それでも開始は1からになります。

  • [Number of generated rows] (生成する行数)を25に設定して、すべての奇数の州IDを生成します(全部で50州)。

  • [OK]をクリックして、設定を有効にします。

  • 次に、tMysqlSPコンポーネントを選択し、プロパティを定義します。

  • [Property type] (プロパティタイプ)フィールドを[Repository] (リポジトリー)に設定し、リストの該当するエントリーを選択します。接続の詳細が自動的に入力されます。

  • あるいは、接続情報を手動で設定します。

  • [Sync Column] (カラムの同期]をクリックして、先行のコンポーネントから生成されたスキーマを取得します。

  • 次に、[Edit Schema] (スキーマを編集) をクリックし、ID に加えて、出力する州ラベルを保持するためのカラムを1列追加します。

  • [SP Name] (SP名)フィールドに、データベースから呼び出すプロシージャーの名前を入力します。この例では、getstateになります。実行されるプロシージャーは以下のようになります:

    DROP PROCEDURE
    IF EXISTS `talend`.`getstate` $$
    CREATE DEFINER=`root`@`localhost` PROCEDURE `getstate`(IN pid INT, OUT
    pstate VARCHAR(50))
    BEGIN
    SELECT LabelState INTO pstate FROM us_states WHERE idState = pid;
    END $$
  • [Parameters] (パラメーター)エリアで、 プラスボタンをクリックして、テーブルに行を追加します。

  • [Column] (カラム)フィールドをIDに、[Type] (タイプ)フィールドをINに設定します。これは、入力パラメーターとしてプロシージャーに渡されます。

  • 2番目の行を追加し、[Column] (カラム)フィールドをStateに、[Type] (タイプ)フィールドをOutに設定します。これは、返される出力パラメーターです。

  • 最終的には、tLogRowコンポーネントのプロパティを設定します。

  • スキーマを先行コンポーネントと同期します。

  • [Print values in cells of a table] (テーブルのセルに値を表示)チェックボックスをオンにして結果を読みやすくします。

  • 次に、ジョブを保存して実行します。

プロシージャーで定義されているように奇数の州IDに対応する州ラベルが出力に表示されます。

注:

データベーステーブルまたはDBクエリーから一連のレコードを分析し、単一のレコードを返す場合は、マザー/ドーターテーブルにデータを挿入するをチェックします。