【发布时间】:2014-06-16 05:45:21
【问题描述】:
我正在尝试创建一个执行大量 DB(Microsoft SQL Server 2008 DB)操作的 mule 流。
我执行的第一个数据库查询返回一个 ID 列表
select id from first_table;
我通过构建 ArrayList 的 Java 转换器运行有效负载: [1,2,3,4,5] 然后将其保存为变量indices
然后我尝试在另一个查询中使用这个数组
select * from another_table where first_table_fk in (#[flowVars.indices]);
但无论我做什么,我都会不断收到错误
不支持从 UNKNOWN 到 UNKNOWN 的转换。
在使用 IN 运算符时,Mule 无法处理 java.util.ArrayList(或常规数组 int[])。
然后我尝试将整个查询创建为字符串变量(然后在 中引用它)。
这会导致异常: java.lang.IllegalArgumentException:没有为 SQL 语句找到 SQL 策略:#[flowVars.queryString]
你能帮我解决我的问题吗(在 Mule sql 查询中使用 IN 运算符)?
我正在使用 Mule studio 3.4.0 CE。
谢谢!
【问题讨论】: