# tELTMap

提供されたテーブルを使ってパラメーターを作成済みSQLステートメントにフィードします。ステートメントには、テーブル間または1つのテーブルとそのエイリアス間で実装する内部結合または外部結合を含めることができます。

情報メモ警告: 構築されたSQL文のクエリーの順序は、GUIで表示されるものと同じように生成されるため、LEFT JOIN句がINNER JOIN句よりも前に来るとデータが失われる可能性があります。ただし、一部のデータベース([PostgreSQL](https://www.postgresql.org/docs/12/explicit-joins.html)など)では実行プランを生成する際にクエリーの順序が考慮され、クエリー実行時の最適化で順序の部分が必要となるため、Talendは現在のところGUIからこの動作を変更する予定はありません。

ELTの3つのコンポーネントは、オペレーション条件の点で密接に関連しています。これらのコンポーネントでDBスキーマを使用して、句を含むInsertステートメントを生成します。Insertステートメントは、定義済みのDB出力テーブル内で実行するものです。

## tELTMapの標準プロパティ

これらのプロパティは、標準ジョブのフレームワークで実行されているtELTMapを設定するために使われます。

標準のtELTMapコンポーネントは、ELTファミリーに属しています。

このフレームワーク内のコンポーネントは、すべてのTalend製品で利用できます。

## 基本設定

| プロパティ | 説明 |
| --- | --- |
| [Use an existing connection] (既存の接続を使用) | 定義済みの接続の詳細を再利用する場合は、このチェックボックスを選択して、[Component List] (コンポーネントリスト)ドロップダウンリストから、目的の接続コンポーネントを選択します。<br><br>情報メモ注: ジョブに親ジョブと子ジョブが含まれている時は、親ジョブと子ジョブの間の既存の接続を共有したい場合(たとえば、親ジョブで作成した接続を子ジョブと共有するなど)には、次のように実行します。<br><br><ol> <li>親レベルで、共有するデータベース接続を、そのデータベース接続そのものを作成する接続コンポーネントの<span>[Basic settings] (基本設定)</span>ビューに登録します。 </li> <li>子レベルで、登録済みのそのデータベース接続を読み取るために専用の接続コンポーネントを使用します。 </li> </ol><br><br>ジョブレベル全体でデータベース接続を共有する方法の例は、[データベース接続を共有](https://help.qlik.com/talend/r/ja-JP/7.3/studio-user-guide/sharing-database-connection)をご覧ください。 |
| [ELT Map Editor] (ELT Mapエディター) | ELT Mapエディターでは、出力スキーマを定義し、実行するSQLステートメントのグラフィカルビルドを作成できます。スキーマのカラム名は、データベースのカラム名とは異なる場合があります。<br><br>ポップアップ [Expression Builder] (式ビルダー)ダイアログボックスでCtrl + スペースを押すと、複数行の式を入力して、入力カラム、出力カラム、コンテキスト変数を含めて、提案にアクセスできます。<br><br>対応するテーブルで[Enable/disable column name filter] (カラム名フィルターを有効化/無効化)ボタンをクリックし、表示されたフィールドに検索キーワードを入力すれば、入力テーブルまたは出力テーブルのスキーマカラムをフィルタリングできます。<br><br>ELT Mapエディターの左上にある![](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/button-elt-map-setup-configuration.png)をクリックします。表示された[Property Settings] (プロパティ設定)ダイアログボックスでは、次の操作が可能です。<br><br>ELT Mapエディターの左上にある![](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/button-elt-map-setup-configuration.png)をクリックします。表示された[Property Settings] (プロパティ設定)[Property Settings] (プロパティ設定)ダイアログボックスでは、次の操作が可能です。<br><br><ul> <li><span>[Add quotes in columns when generating query] (クエリー生成時にカラムに引用符を追加)</span>チェックボックスを選択すれば、生成されたSQLクエリーにあるカラム名に引用符を追加できます。<p><span>Talend</span>が提供する8.0 R2022-11以降の<span>Talend Studio</span>マンスリーアップデートをインストールしていない場合、このチェックボックスは<span>区切り付き識別子</span>として表示されます。</p> </li> <li><span>[Add quotes in columns when generating query] (クエリー生成時にテーブル名に引用符を追加)</span>チェックボックスを選択すれば、生成されたSQLクエリーにあるテーブル名とスキーマ名に引用符を追加できます。<p>このチェックボックスは、<span>Talend</span>が提供する8.0 R2022-11以降の<span>Talend Studio</span>マンスリーアップデートをインストール済みである場合のみ利用できます。</p> </li> </ul><br><br>[Add quotes in columns when generating query] (クエリー生成時にカラムに引用符を追加)チェックボックスを選択すれば、生成されたSQLクエリーにあるカラム名に引用符を追加できます。<br><br>Talendが提供する8.0 R2022-11以降のTalend Studioマンスリーアップデートをインストールしていない場合、このチェックボックスは区切り付き識別子として表示されます。<br><br>[Add quotes in columns when generating query] (クエリー生成時にカラムに引用符を追加)[Add quotes in columns when generating query] (クエリー生成時にカラムに引用符を追加)チェックボックスを選択すれば、生成されたSQLクエリーにあるカラム名に引用符を追加できます。<br><br>Talendが提供する8.0 R2022-11以降のTalend Studioマンスリーアップデートをインストールしていない場合、このチェックボックスは区切り付き識別子として表示されます。<br><br>TalendTalendが提供する8.0 R2022-11以降のTalend StudioTalend Studioマンスリーアップデートをインストールしていない場合、このチェックボックスは区切り付き識別子区切り付き識別子として表示されます。<br><br>[Add quotes in columns when generating query] (クエリー生成時にテーブル名に引用符を追加)チェックボックスを選択すれば、生成されたSQLクエリーにあるテーブル名とスキーマ名に引用符を追加できます。<br><br>このチェックボックスは、Talendが提供する8.0 R2022-11以降のTalend Studioマンスリーアップデートをインストール済みである場合のみ利用できます。<br><br>[Add quotes in columns when generating query] (クエリー生成時にテーブル名に引用符を追加)[Add quotes in columns when generating query] (クエリー生成時にテーブル名に引用符を追加)チェックボックスを選択すれば、生成されたSQLクエリーにあるテーブル名とスキーマ名に引用符を追加できます。<br><br>このチェックボックスは、Talendが提供する8.0 R2022-11以降のTalend Studioマンスリーアップデートをインストール済みである場合のみ利用できます。<br><br>このチェックボックスは、TalendTalendが提供する8.0 R2022-11以降のTalend StudioTalend Studioマンスリーアップデートをインストール済みである場合のみ利用できます。 |
| [Style link] (スタイルリンク) | リンクの表示方法を選択します。<br><br>Auto (自動): 入力スキーマと出力スキーマおよびWebサービスパラメーター間のリンクはデフォルトで曲線の形になります。<br><br>Bezier curve (ベジエ曲線): スキーマとWebサービスパラメーター間のリンクは曲線の形になります。<br><br>Line (直線): スキーマとWebサービスパラメーター間のリンクは直性の形になります。<br><br>このオプションによってパフォーマンスがわずかに最適化されます。 |
| [Property Type] (プロパティタイプ) | [Built-in] (組み込み)と[Repository] (リポジトリー)のいずれかです。<br><br><ul> <li> <p> <span>[Built-In] (組み込み)</span>: 一元的に保存されるプロパティデータはありません。</p> </li> <li> <p> <span>[Repository] (リポジトリー)</span>: プロパティが保存されているリポジトリーファイルを選択します。</p> </li> </ul> |
| JDBC URL | 使用するデータベースのJDBC URL。たとえば、Amazon RedshiftデータベースのJDBC URLはjdbc:redshift://endpoint:port/databaseです。 |
| [Driver JAR] (ドライバーJAR) | 必要なドライバーJARをロードするには、このテーブルに入力してください。これを行うには、テーブルの下の[+]ボタンをクリックして、必要に応じてドライバーJAR用行数を増やします。セルを選択し、セルの右側にある[...]ボタンをクリックして、[Module] (モジュール)ダイアログボックスを開くと使用するドライバーJARを選択できます。たとえば、RedshiftデータベースのドライバーjarはRedshiftJDBC41-1.1.13.1013.jarです。 |
| クラス名 | 指定したドライバーのクラス名を二重引用符で囲んで入力します。たとえば、RedshiftJDBC41-1.1.13.1013.jarドライバーの場合、入力する名前はcom.amazon.redshift.jdbc41.Driverになります。 |
| Username (ユーザー名)とPassword (パスワード) | DBユーザー認証データ。<br><br>パスワードを入力するためには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力して[OK]をクリックし、設定を保存します。 |
| [Mapping] (マッピング) | 使用するデータベースにメタデータマッピングファイルを指定します。メタデータマッピングファイルは、データベースとJavaの間のデータ型変換に使用します。メタデータマッピングの詳細は、タイプのマッピングに関するドキュメンテーションをご覧ください。<br><br>情報メモ注: Hiveマッピングを使用して、Databricks Delta Lakeをサポートできます。 |

## 詳細設定

| プロパティ | 説明 |
| --- | --- |
| [Dry run] (ドライラン) | このオプションを選択すると、データベースに接続したりクエリーを実行したりせずに、コンポーネントに接続したELTOutputコンポーネントのQUERY変数にデータが入力されます。<br><br>情報メモ注: このオプションは、Talendが提供するR2022-01以降のTalend Studioマンスリーアップデートをインストール済みである時のみ利用可能です。詳細は管理者にお問い合わせください。 |
| [Additional JDBC parameters] (追加のJDBCパラメーター) | 作成するデータベース接続の接続の追加プロパティを指定します。このオプションは、[Basic settings] (基本設定)の[Use an existing connection] (既存の接続を使用)チェックボックスがオンになっている場合は利用できません。 |
| [tStatCatcher Statistics] (tStatCatcher統計) | このチェックボックスを選択すると、ジョブレベルやコンポーネントレベルでジョブ処理メタデータが収集されます。 |

## グローバル変数

| 変数 | 説明 |
| --- | --- |
| グローバル変数 | ERROR\_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。<br><br>Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。<br><br>フィールドまたは式に変数を入力する場合は、Ctrl + スペースを押して変数リストにアクセスし、使用する変数を選択します。<br><br>変数の詳細は、[コンテキストと変数を使用](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/contexts-and-variables)をご覧ください。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | tELTMapは、tELTInputおよびtELTOutputと共に使います。これらのコンポーネントと共に使う出力リンクは、テーブル名の構文と正確に対応している必要があります。<br><br>情報メモ注: ELTコンポーネントは実際のデータフローを処理せず、スキーマ情報しか処理しません。 |
| [Dynamic settings] (ダイナミック設定) | [+]ボタンをクリックしてテーブルに行を追加し、[Code] (コード)フィールドにコンテキスト変数を入力して、ジョブ内で計画した複数の接続からデータベース接続をダイナミックに選択します。この機能は、データストラクチャーが同じでデータベースが異なるデータベーステーブルにアクセスする必要がある場合、特に、Talend Studioを介さずにジョブをデプロイおよび実行する必要がある時など、ジョブの設定を変更できない環境で作業している場合に役立ちます。<br><br>[Dynamic settings] (ダイナミック設定)テーブルは、[Basic settings] (基本設定)ビューで[Use an existing connection] (既存の接続を使用)チェックボックスがオンになっている時のみ利用可能です。ダイナミックパラメーターを定義すると、[Basic settings] (基本設定)ビューの[Component List] (コンポーネントリスト)ボックスは利用できなくなります。<br><br>ダイナミックパラメーターの定義法を示すユースケースについては、[コンテキストベースのダイナミック接続によってデータベースからデータを読み取り](https://help.qlik.com/talend/r/ja-JP/8.0/components/defining-context-groups/reading-data-from-databases-through-context-based-dynamic-connections)と、[ダイナミックにロードされた接続パラメーターを使って異なるMySQLデータベースからデータを読み取り](https://help.qlik.com/talend/r/ja-JP/8.0/components/context/reading-data-from-different-mysql-databases-using-dynamically-loaded-connection-parameters)をご覧ください。ダイナミック設定とコンテキスト変数の詳細は、[ダイナミックスキーマ](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/dynamic-schema)と[コンテキストグループを作成し、その中でコンテキスト変数を定義](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/creating-context-group-and-define-context-variables-in-it)をご覧ください。 |

**関連概念**

[ELTコンポーネントを使ってSnowflakeデータを集計](https://help.qlik.com/talend/ja-JP/components/8.0/elt-jdbc/teltinput-teltmap-tsnowflakeinput-tlogrow-aggregating-snowflake-data-using-context-variables-as-table-and-connection-names "このシナリオでは、ELTコンポーネントを使用して、2つのソーステーブルSTUDENTとTEACHERからSnowflakeデータを1つのターゲットテーブルFULLINFOに集計する例を示します。")