メイン コンテンツをスキップする 補完的コンテンツへスキップ

tMSSqlOutputBulkExecの標準プロパティ

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

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

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

情報メモ注: このコンポーネントは、動的データベースコネクターの特定のバージョンです。データベース設定に関連するプロパティは、データベースタイプの選択に応じて異なります。動的データベースコネクターについては、DB Genericコンポーネントをご覧ください。
情報メモ注: ESB用にジョブをOSGIバンドルとしてビルドする場合、SQL Serverコンポーネントで使われるMS SQL Serverドライバーであるjtdsとmssql-jdbcは、ビルドアーティファクトには含まれていません。 Talend Runtimeでアーティファクトを実行する場合は、これらのドライバーを<TalendRuntimePath>/libフォルダーにコピーして手動でデプロイし、 Talend Runtimeを再起動する必要があります。

基本設定

データベース

目的のデータベースタイプをリストから選択し、[Apply] (適用)をクリックします。

[Action] (アクション) 実行するアクションを選択します。

[Bulk insert] (一括挿入) [Bulk update] (一括アップデート)

[Property type] (プロパティタイプ) [Built-in] (組み込み)[Repository] (リポジトリー)のいずれかです。
  • [Built-In] (組み込み): 一元的に保存されるプロパティデータはありません。
  • [Repository] (リポジトリー): プロパティが保管されるリポジトリーファイルを選択します。後続フィールドは、取得されたデータを使用して自動的に入力されます。
[Use an existing connection] (既存の接続を使用)

定義済みの接続の詳細を再利用する場合は、このチェックボックスを選択して、[Component List] (コンポーネントリスト)ドロップダウンリストから、目的の接続コンポーネントを選択します。

情報メモ注: ジョブに親ジョブと子ジョブが含まれている時は、親ジョブと子ジョブの間の既存の接続を共有したい場合(たとえば、親ジョブで作成した接続を子ジョブと共有するなど)には、次のように実行します。
  1. 親レベルで、共有するデータベース接続を、そのデータベース接続そのものを作成する接続コンポーネントの[Basic settings] (基本設定)ビューに登録します。
  2. 子レベルで、登録済みのそのデータベース接続を読み取るために専用の接続コンポーネントを使用します。

ジョブレベル全体でデータベース接続を共有する方法の例は、データベース接続を共有をご覧ください。

[JDBC Provider] (JDBCプロバイダー)

使うJDBCドライバーのプロバイダー、[Microsoft] (マイクロソフト) (デフォルト、推奨)または[Open source JTDS] (オープンソースJTDS)を選択します。

Microsoftを選択した場合は、SQL Server用Microsoft JDBCドライバーを[Microsoftダウンロードセンター]からダウンロードし、ダウンロードしたzipファイルを解凍し、解凍したフォルダーからお使いのJREバージョンに基づいてjarを選択し、jarの名前をmssql-jdbc.jarに変更し、手動でインストールする必要があります。jarの選択については、Microsoftダウンロードセンターでシステム要件情報をご覧ください。

OSGiビルドには、オープンソースのjTDSJDBCドライバーが含まれないことにご注意ください。このコンポーネントが含まれているジョブをOSGiバンドルとしてビルドする必要がある時は、Microsoftの公式JDBCドライバーを使用してください。このドライバーを使用しない場合、このコンポーネントは、 Talend Runtimeに正しくインストールされたjTDSJDBCドライバーを使用するデータソースでのみ機能します。

[Host] (ホスト) 使うデータベースサーバーかAzure Synapse AnalyticsのIPアドレスまたはホスト名を指定します。

サーバーが存在するマシンでSQL Server Browserサービスが実行中である場合は、このフィールドにホスト名とインスタンス名を{host_name}\{instance_name}という形式で指定すれば、TCPダイナミックポートを通じてネームドインスタンスに接続できるようになります。この場合は[Port] (ポート)フィールドを空白のまましておきます。関連情報は、SQL Server Browser serviceをご覧ください。

現在、localhost127.0.0.1またはローカルマシンの正確なIPアドレスのみが適切に機能することを許可されています。言い換えるなら、データベースサーバーを、Talend Studioがインストールされているのと同じマシン、またはtMSSqlOutputBulkExecを使うジョブがデプロイされているのと同じマシンにインストールする必要があります。

[Port] (ポート)

使うデータベースサーバーかAzure Synapse Analyticsのリスニングポート番号を入力します。

サーバーが存在するマシンでSQL Server Browserサービスが実行中である場合は、[Host] (ホスト)フィールドにホスト名とインスタンス名を入力し、このフィールドを空にしておけば、TCPダイナミックポートを通じてネームドインスタンスに接続できるようになります。関連情報は、SQL Server Browser serviceをご覧ください。

[DB name] (DB名) データベースの名前を入力します。
スキーマ

データベーススキーマの名前を入力します。

[Username] (ユーザー名)[Password] (パスワード) 認証データを入力します。

パスワードを入力するためには、[Password] (パスワード)フィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力して[OK]をクリックし、設定を保存します。

[Additional JDBC Parameters] (追加のJDBCパラメーター)フィールドにintegratedSecurity=trueを追加し、これら2つのフィールドを空にしておけば、Windows[Type 2 integrated authentication] (タイプ2のインテグレーション認証)を使用できるようになります。関連情報は、Building the connection URLConnecting with integrated authentication On Windowsというセクションをご覧ください。

テーブル 書き込まれるテーブルの名前。

一度に書き込みができるテーブルは1つだけです。挿入オペレーションが成功するには、テーブルが既に存在している必要があります。

[Action on table] (テーブルでのアクション) 定義済みのテーブルで、次のオペレーションの1つを実行できます。
  • [None] (なし): 操作は行われません。
  • [Drop and create a table] (ドロップしてテーブルを作成): テーブルが削除され、再び作成されます。
  • [Create a table] (テーブルを作成): テーブルが存在しないため、作成されます。
  • [Create a table if not exists] (テーブルが存在しない場合は作成): テーブルが存在しない場合は作成されます。
  • [Truncate table] (テーブルを切り詰め): テーブルのコンテンツが削除されます。この操作はロールバックできません。
  • [Clear a table] (テーブルをクリア): テーブルのコンテンツが削除されます。この操作はロールバックできます。
[Schema] (スキーマ)[Edit schema] (スキーマを編集)

スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。

[Built-in] (組み込み): そのコンポーネントに対してのみスキーマを作成し、ローカルに保管します。

[Repository] (リポジトリー): スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。

再利用するスキーマに整数またはファンクションのデフォルト値が指定されている場合は、これらのデフォルト値を引用符で囲まないようにご注意ください。引用符で囲まれている場合は手動で削除します。

詳細は、テーブルスキーマを取得をご覧ください。

スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。

  • [View schema] (スキーマを表示): スキーマのみを表示する場合は、このオプションを選択します。

  • [Change to built-in property] (組み込みのプロパティに変更): ローカルで変更を行うためにスキーマを組み込みに変更する場合は、このオプションを選択します。

  • [Update repository connection] (リポジトリー接続をアップデート): リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。

    変更を現在のジョブにのみ反映する場合は、変更後、[No] (いいえ)を選択し、[Repository Content] (リポジトリーコンテンツ)ウィンドウで再びこのスキーマのメタデータを選択します。

[File name] (ファイル名) 生成し、ロードするファイルの名前を入力します。
情報メモ注: このファイルは、データベースサーバーと同じマシンにあることも、別のマシンにあることもあります。ファイルがデータベースサーバーと同じマシンにある場合は、このフィールドにファイルへのパスを入力します。ファイルが別のマシンにある場合は、このフィールドにファイルの汎用命名規則(UNC)名(すなわち\\{Servername}\{Sharename}\{Path}\{Filename})を入力します。後者の場合はファイルを読み書きできる権限が必要となります。関連情報は、Bulk importing to SQL Server from a remote data fileをご参照ください。
[Append] (追加) このチェックボックスをオンにすると、レコードの最後に新しい行が追加されます。

詳細設定

[Additional JDBC parameters] (追加のJDBCパラメーター)

作成するデータベース接続に接続の追加プロパティを指定します。プロパティはセミコロンで区切られ、各プロパティはキー-値ペアです。たとえばAzure SQLデータベース接続の場合は、encrypt=true;trustServerCertificate=false; hostNameInCertificate=*.database.windows.net;loginTimeout=30;となります。

このフィールドは、[Use an existing connection] (既存の接続を使用)チェックボックスがオンになっている場合は利用できません。

[Authenticate using Azure Active Directory] (Azure Active Directoryを使って認証)

このオプションを選択すると、接続を確立する時にAzure Active Directory認証を使用できます。関連情報は、Azure AD Authenticationをご覧ください。

このオプションは、[Basic settings] (基本設定)ビューの[JDBC Provider] (JDBCプロバイダー)ドロップダウンリストからMicrosoftが選択されている場合のみ利用できます。

[Enable always encrypted (Column encryption)] (常に暗号化を有効にする(カラムの暗号化)) このオプションを選択すると、MicrosoftのAlways encrypted機能が使用され、データが暗号化および保護されます。このオプションを使用するためには、事前にAzure Key Vaultでシークレットを保存しておく必要があります:
  • [Application Client ID] (アプリケーションクライアントID): 登録済みアプリケーションのクライアントIDを入力します。この情報は、Azure Active Directory > [App registrations] (アプリの登録) > [Essentials] (基本)の下にあるアプリの詳細に記載されています。
  • [Application Client Secret] (アプリケーションクライアントシークレット): 登録済みアプリケーションのクライアントパスワードを入力します。この情報は、Azure Active Directory > [App registrations] (アプリの登録) > [Certificates and secrets] (証明書とシークレット)の下にあるアプリの詳細に記載されています。

この機能には、クエリー操作とステートメントに関する制限がいくつか適用されます。制限事項の包括的なリストは、Microsoft SQL Serverのドキュメンテーションをご覧ください。

[Field separator] (フィールド区切り) フィールドを区切る文字、文字列、正規表現のいずれか。
[Row separator] (行区切り) 行を区別するための文字列(例: Unixでは"\n"on)。
[First row] (最初の行) アクションを開始する行の番号を入力します。
[Include header] (ヘッダーを含める) このチェックボックスをオンにするとカラムヘッダーが含まれます。
[Code page] (コードページ) 特定の文字セットを数値コードポイント値にマッピングするために使われるOEMコードページ。
[Data file type] (データファイルのタイプ) 処理するデータのタイプを選択します。
[Encoding] (エンコーディング) リストからエンコーディングを選択するか、[CUSTOM] (カスタム)を選択して、手動で定義します。このフィールドはデータベースのデータ処理で必須です。
[tStatCatcher statistics] (tStatCatcher統計) このチェックボックスをオンにすると、コンポーネントレベルでログデータを収集できます。

使用方法

使用ルール このコンポーネントは、データベースにロードするデータが特定の変換を必要としない場合に主に使用します。
[Dynamic settings] (ダイナミック設定)

[+]ボタンをクリックしてテーブルに行を追加し、[Code] (コード)フィールドにコンテキスト変数を入力して、ジョブ内で計画した複数の接続からデータベース接続をダイナミックに選択します。この機能は、データストラクチャーが同じでデータベースが異なるデータベーステーブルにアクセスする必要がある場合、特に、Talend Studioを介さずにジョブをデプロイおよび実行する必要がある時など、ジョブの設定を変更できない環境で作業している場合に役立ちます。

[Dynamic settings] (ダイナミック設定)テーブルは、[Basic settings] (基本設定)ビューで[Use an existing connection] (既存の接続を使用)チェックボックスがオンになっている場合のみ利用できます。ダイナミックパラメーターを定義すると、[Basic settings] (基本設定)ビューの[Component List] (コンポーネントリスト)ボックスは利用できなくなります。

ダイナミックパラメーターの定義法を示すユースケースについては、コンテキストベースのダイナミック接続によってデータベースからデータを読み取りと、ダイナミックにロードされた接続パラメーターを使って異なるMySQLデータベースからデータを読み取りをご覧ください。ダイナミック設定とコンテキスト変数の詳細は、ダイナミックスキーマコンテキストグループを作成し、その中でコンテキスト変数を定義をご覧ください。

制限事項 コンポーネントが正しく機能するためには、データベースサーバーを、Talend Studioがインストールされてマシン、またはtMSSqlOutputBulkExecを使うジョブがデプロイされているのと同じマシンにインストールする必要があります。

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。