2

我想对对象列表执行插入操作。

我的插入查询如下所示

insert into table name (#[flowVars['columnNames']]) values (#[flowVars['values']]) 

#[flowVars['columnNames'] 包含逗号分隔的 columnNames,例如 col1,col2

#[flowVars['values'] contains #[payload.?val1], #[payload.?val2]

我收到以下错误。

列名“@P0”无效。(com.microsoft.sqlserver.jdbc.SQLServerException)

我该如何解决这个问题?

4

2 回答 2

1

恕我直言,上面的查询不适合参数化查询。因为构造的查询将被 Mule 错误地解释。它可能是这样构造的:insert into tableName ('col1,col2') values ('\'val1\',\'val2\'')

因此,我建议将 Query Type 更改为:Dynamic

于 2017-02-06T07:22:19.087 回答
1

我可以建议您调试并检查是否为 flowVars['columnNames'] 和 flowVars['values'] 设置了正确的值,也可以将其放入 logger 以查看其在 log 中的值。然后检查上面的输出是否与此插入操作所需的列名匹配。

于 2017-01-19T06:22:52.727 回答