2016-11-01 16 views
1

私は、キャメルを使用するTalend ESBで作業しています。 私の要件は、テーブルに一括挿入を行う必要があり、異なるタイプの入力に対して動的にクエリを作成する必要があります。キャメルでSQLステートメントを動的に作成する必要があります。Talend

私はコンテキストを作成する場合extVarを言うと "table_fooに(FOO、バー)の値を挿入(:#foo、:#bar)" にそれをデフォルト をし、次のコード "SQL" でcMessagingEndpointコンポーネントを使用+ context.extVar + "?batch = true & dataSource = mysql" 正常に動作します。

Talendでは、cProcessor内のcontext.extVarにアクセスできるので、そこからクエリを動的に読み込もうとしましたが、できませんでした。

名前付きパラメータを使用しているため、クエリに本体を使用することも、プロパティ/ヘッダーの値をcMessageEndPointのSQL文の中に入れることもできないことを前提としています。

cMessageEndPointのSQL文にクエリを動的に取り込む方法はありますか。

答えて

2

私の問題を解決できました。 this answerに感謝します。私の目的は、cRecipientListを使用して動的バッチ挿入クエリを作成することでした。これを実現できました。私はコンテキスト変数を読み込み、cRecipientListの式の中で使用して、cProcessorから動的に読み込んでいました。

enter image description here

関連する問題