スキーマを使ってデータベーステーブルカラムの長さを設定 - Cloud - 7.3

Talend Studioユーザーガイド

Version
Cloud
7.3
Language
日本語
Product
Talend Big Data
Talend Big Data Platform
Talend Cloud
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発
Last publication date
2024-02-13

このタスクについて

このトピックのジョブでは、データベーステーブルの作成時にスキーマカラムの長さ設定を使ってMySQLデータベーステーブルカラムの長さを設定する方法を示します。このジョブを実行するためには、必要な権限を持つ有効なMySQLユーザーアカウントが必要です。

次のステップに従い、ジョブを設定して実行します。

手順

  1. Talend Studioを起動し、空の標準ジョブを作成します。
  2. [Palette] (パレット)からtFixedFlowInputとtMysqlOutputをワークスペースにドラッグ&ドロップします。
  3. [Row] (行) > [Main] (メイン)接続を使用して2つのコンポーネントを接続します。
  4. tFixedFlowInputコンポーネントをダブルクリックして[Basic settings] (基本設定)ビューを開きます。
    1. [Edit schema] (スキーマを編集)の横にある[...]ボタンをクリックしてスキーマエディターを開き、カラム(この例ではtestColumn)を追加して[Type] (タイプ)Stringに、[Length] (長さ)3に設定します。
    2. [Use Single Table] (単一テーブルを使用)を選択し、[Values] (値)テーブルに文字列(この例ではabcdefg)を入力します。
    3. 他のオプションはそのままにしておきます。

    このコンポーネントによって、作成するデータベーステーブルに書き込む文字列(つまりabcdefg)が設定されます。文字列の長さは7で、コンポーネントスキーマでのカラムの長さは3です。

  5. tDBOutputコンポーネントをダブルクリックして[Basic settings] (基本設定)ビューを開きます。
    1. 対応するフィールドにユーザーアカウントの認証情報を入力します。
    2. [Sync columns] (カラムを同期) をクリックし、スキーマをtFixedFlowInput_1コンポーネントのスキーマと同期させます。
    3. [Action on table] (テーブルのアクション)ドロップダウンリストから[Drop table if exists and create] (テーブルが存在する場合はドロップして作成)を選択します。
      テーブルが存在しないことが確実であれば、[Create table if does not exist] (テーブルが存在しない場合は作成)オプションを選択することもできます。
    4. [Action on data] (データでのアクション)ドロップダウンリストで[Insert] (挿入)を選択します。
    5. 他のオプションはそのままにしておきます。

    このコンポーネントによって、テーブルが作成され、受信データがそのテーブルに挿入されます。

  6. F6を押してジョブを実行します。

    実行結果は次の図のようになり、データが長すぎるというエラーが表示されます。これは、書き込む文字列の長さ(つまり7)がカラムの長さ(つまり3)より大きいことが原因です。

  7. どちらのコンポーネントでもスキーマカラムの長さを7に変更し、ジョブを再実行します。

    ジョブが正しく実行され、文字列が適切にテーブルに書き込まれたことがわかります。

タスクの結果

スキーマでの長さの設定は、データベーステーブルの作成時に影響します。これによって、データベーステーブルにある対応カラムの長さが決定します。