jdbc:outbound-channel-adapter によって実行される動的更新ステートメントを作成する必要があります。これは、次のように可変数の条件を持つケース式を使用して 1 つのフィールドを設定する必要があるためです。
UPDATE tableA
SET fieldA = CASE
WHEN fieldB IN ('a','b') THEN 1
WHEN fieldB IN ('c','d') THEN 2
...
WHEN fieldB IN (...) THEN N
END
WHERE fieldC = :headers[MY_FIELDC]
次のように、Spring 式でこの動的更新ステートメントを作成できます。
"'UPDATE tableA SET fieldA = ' + headers[MY_CASE_EXP] + ' WHERE fieldC = :headers[MY_FIELDC]'"
しかし、クエリ属性は Spring 式をサポートしていないようです。
jdbc:outbound-channel-adapter で使用する動的クエリを生成するにはどうすればよいですか?