# tMysqlBulkExec

MySQLまたはAuroraデータベースで挿入操作を実行する際にパフォーマンスを向上させます。

コンポーネントtMysqlOutputBulkおよびtMysqlBulkExecは、2ステップのプロセスで一緒に使用されます。最初のステップでは、出力ファイルが生成されます。2番目のステップでは、選択したデータベースをフィードするために使用するINSERTステートメント内で、このファイルを使用します。これら2つのステップは、tMysqlOutputBulkExecコンポーネント内で融合しています。このコンポーネントについては別のセクションで詳しく説明しています。2つの別々のステップを使用する利点は、データベースにロードする前にデータを変換できることです。

## tMysqlBulkExecの標準プロパティ

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

標準のtMysqlBulkExecコンポーネントは、データベースファミリーに属しています。

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

情報メモ注: このコンポーネントは、動的データベースコネクターの特定のバージョンです。データベース設定に関連するプロパティは、データベースタイプの選択に応じて異なります。動的データベースコネクターについては、[DB Genericコンポーネント](https://help.qlik.com/talend/r/ja-JP/8.0/components/db-generic/db-generic-component)をご覧ください。

## 基本設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| データベース | 目的のデータベースタイプをリストから選択し、[Apply] (適用)をクリックします。 |
| [Property type] (プロパティタイプ) | <ul> <li> <p> <span><span>[Built-in] (組み込み)</span>と<span>[Repository] (リポジトリー)</span>のいずれかです。</span></p> </li> <li> <p> <span>[Built-In] (組み込み)</span>: 一元的に保存されるプロパティデータはありません。</p> </li> <li> <p> <span>[Repository] (リポジトリー)</span>: プロパティが保管されるリポジトリーファイルを選択します。後続フィールドは、取得されたデータを使用して自動的に入力されます。</p> </li> </ul> |
| [DB Version] (データベースバージョン) | 使用しているデータベースのバージョンを選択します。 |
| [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)をご覧ください。 |
| [Host] (ホスト) | データベースサーバーのIPアドレス |
| [Port] (ポート) | DBサーバーのリスニングポート番号。 |
| [Database] (データベース) | データベースの名前 |
| [Username] (ユーザー名)と[Password] (パスワード) | DBユーザー認証データ。<br><br>パスワードを入力するためには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力して[OK]をクリックし、設定を保存します。 |
| [Action on table] (テーブルでのアクション) | 定義済みのテーブルで、次のオペレーションの1つを実行できます。<br><br>[None] (なし): 操作は行われません。<br><br>[Drop and create table] (ドロップしてテーブルを作成): テーブルが削除され、再作成されます。<br><br>[Create table] (テーブルを作成): テーブルが存在しないため、作成されます。<br><br>[Create table if not exists] (テーブルが存在しない場合は作成): テーブルが存在しない場合は作成されます。<br><br>[Drop table if exists and create] (テーブルが存在する場合はドロップして作成): テーブルが既に存在する場合は削除されて再作成されます。<br><br>[Clear table] (テーブルをクリア): テーブルのコンテンツが削除されます。操作はロールバックできます。<br><br>[Truncate table] (テーブルを切り詰め): テーブルのコンテンツが削除されます。操作をロールバックすることはできません。 |
| [Table] (テーブル) | 書き込むテーブルの名前。一度に書き込みができるテーブルは1つだけです。挿入オペレーションが成功するには、テーブルが既に存在している必要があります。 |
| [Local file Name] (ローカルファイル名) | ロードするファイルの名前。<br><br>このファイルは、Talend Studioがインストールされているか、tMysqlBulkExecを使用しているジョブがデプロイされているマシンで生成されます。 |
| [Schema] (スキーマ)と[Edit Schema] (スキーマを編集) | <ul> <li> <p>スキーマとは行の説明で、処理された後に次のコンポーネントに渡されるフィールドの数を定義するものです。スキーマは<span>[Built-in] (組み込み)</span>か、<span>[Repository] (リポジトリー)</span>にリモートで保存されます。 </p> <p>スキーマを変更するには<span>[Edit schema] (スキーマを編集)</span>をクリックします。現在のスキーマが<span>リポジトリー</span>タイプの場合は、3つのオプションを利用できます。</p> <ul> <li> <p> <span>[View schema] (スキーマを表示)</span>: スキーマのみを表示する場合は、このオプションを選択します。</p> </li> <li> <p> <span>[Change to built-in property] (組み込みのプロパティに変更)</span>: ローカルで変更を行うためにスキーマを<span>組み込み</span>に変更する場合は、このオプションを選択します。</p> </li> <li> <p> <span>[Update repository connection] (リポジトリー接続をアップデート)</span>: リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。</p> <p>変更を現在のジョブにのみ反映する場合は、変更後、<span>[No] (いいえ)</span>を選択し、<span>[Repository Content] (リポジトリーコンテンツ)</span>ウィンドウで再びこのスキーマのメタデータを選択します。</p> </li> </ul> </li> <li> <p> <span>[Built-in] (組み込み)</span>: そのコンポーネントに対してのみスキーマを作成し、ローカルに保管します。</p> </li> <li> <p> <span>[Repository] (リポジトリー)</span>: スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。</p> <p>再使用するスキーマに整数またはファンクションのデフォルト値が指定されている場合は、これらのデフォルト値を引用符で囲まないようにご注意ください。引用符で囲まれている場合は手動で削除します。</p> <p>詳細は、<a href="https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/retrieving-table-schemas?tocId=_C1~eFOlN~GM_JR2qkBYZg" target="_blank">テーブルスキーマを取得</a>をご覧ください。</p> </li> </ul> |

## 詳細設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| [Additional JDBC parameters] (追加のJDBCパラメーター) | 作成するDB接続の接続の追加プロパティを指定します。このオプションは、[Basic settings] (基本設定)の[Use an existing connection] (既存の接続を使用)チェックボックスをオンにしている場合は使えません。 |
| [Lines terminated by] (行区切り) | 行の区切りに使用する文字または連続する文字。 |
| [Fields terminated by] (フィールド区切り) | フィールドを区切る文字、文字列、または正規表現。 |
| [Enclosed by] (引用符) | テキストを囲むために使用する文字。 |
| [Action on data] (データでのアクション) | 定義済みのテーブルのデータに対し、次の処理を実行できます。<br><br>[Insert records in table] (テーブルにレコードを挿入): テーブルに新しいレコードを追加します。<br><br>[Update records in table] (テーブルのレコードをアップデート): 既存のレコードに変更を加えます。<br><br>[Replace records in table] (テーブルのレコードをアップデート): 既存のレコードを新しいレコードに置換します。[Ignore records in table:] (テーブルのレコードを無視:) 既存のレコードを無視するか、または新しいレコードを挿入します。 |
| [Records contain NULL value] (レコードにNULL値を含む) | 入力データフローからnull値を取得する場合は、このボックスにチェックを入れます。このボックスをオフにすると、入力データフローからのnull値が出力データフロー内で空のフィールドと見なされます。 |
| [Encoding] (エンコーディング) | リストからエンコーディングを選択するか、[CUSTOM] (カスタム)を選択して、手動で定義します。このフィールドは、DBデータ処理で必須です。 |
| [tStatCatcher Statistics] (tStatCatcher統計) | このチェックボックスをオンにすると、コンポーネントレベルでログデータを収集できます。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | このコンポーネントは、tMysqlOutputBulkコンポーネントと共に使用するものです。一緒に使うと、MySQLまたはAuroraデータベースをフィードする時にパフォーマンスが向上します。 |
| [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)をご覧ください。 |
| 制限事項 | ライセンスの互換性の問題のため、このコンポーネントの使用に必要な1つ以上のJARが提供されていません。この特定のコンポーネントに不足しているJARをインストールするには、Component (コンポーネント)タブビューの[Install] (インストール)ボタンをクリックします。Talend StudioのIntegrationパースペクティブにある[Modules] (モジュール)タブでも、不足しているすべてのJARを簡単に見つけて追加できます。詳細は、[外部モジュールをインストール](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/installing-external-modules)をご覧ください。 |

**関連概念**

* [変換されたデータをMySQLデータベースに挿入する](https://help.qlik.com/talend/ja-JP/components/8.0/mysql/tmysqlbulkexec-tmysqloutputbulk-tmap-inserting-transformed-data-in-mysql-database-standard-component-this)