2011-08-15 48 views
1

我试图用getContentRsolver().query()与多个选择项,但无法找出正确的语法。我得到"SQLiteException: bind or column index out of range"如何使用getContentResolver()。query for Multiple selectionargs?

contactNumberArray是一个字符串数组,它具有所有的联系号码。

getContentRsolver().query(CONTENT_URI, Projection, caller_number + "=?", contactNumberArray, null); 

此查询工作正常,如果我只有一个字符串数组中的联系号码,但如果我有多个联系人号码这是行不通的。有没有什么特定的方法来查询多个selectionargs?

请让我知道如果有人有任何关于这个问题的指针?

+0

什么编程语言?什么SQLite库?什么平台? –

+0

抱歉,忘记提及这一点。编程语言是Java,平台是Android Froyo 2.2。 – Abhi

回答

2

有没有查询多个selectionArgs两个

首先任何特定的方式,您的SQL语法是错误的。如果您希望比较结果的右侧有多个可能的值,则需要使用IN运算符,而不是=

其次,AFAIK,你不能使用位置参数。

-1

您可以使用caller number in (?,?,...),其中?的计数是您的contactNumberArray的长度。您也可以使用caller number=? OR caller number=?