Worklight SQL Adapter - 无法将参数传递给IN子句

时间:2014-02-18 10:41:52

标签: ibm-mobilefirst worklight-adapters

我想将值列表作为字符串传递给Worklight 6.1 SQL Adapter中的IN子句:

SQL_Query= select * from USERS where name in (?);

我将以下字符串作为参数传递:

'john','mike','joe'

对SQL过程的调用失败,并显示以下错误:

java.sql.SQLException: Invalid column index

所以我的问题是:如何处理SQL适配器中的IN参数?

1 个答案:

答案 0 :(得分:0)

关键是使用长度可变参数,因为我不知道要检索多少人(数量取决于上下文)。

实际上,使用PreparedStatement(JDBC)无法做到这一点。它只能与Statement一起使用。不幸的是,Worklight API并未提出声明,只提出了预备声明。

以下工作正常,但我必须将搜索范围限制为3人:

SQL_Query= select * from USERS where name in (?,?,?);

或(脏):

SQL_Query= select * from USERS where name = ? or name = ? or name = ?;