我正在尝试从数据库中获取行,其中data1字段euqal为字符串数组中的值。这就是我想要做的......但是它给出了一个sqliteexception。
String[] Projection = { ContactsContract.Data.DATA1, ContactsContract.Data.DATA6, ContactsContract.Data.DATA8 };
String Selection = ContactsContract.Data.DATA1 + "= ? ";
c = mContext.getContentResolver().query(CONTENT_URI, Projection, Selection, id, null);
c是光标。和id是字符串数组,其中包含应与数据库的DATA1字段中的字符串匹配的字符串。 有没有其他方法这样做?也许使用'IN'? logcat异常是:
07-03 17:42:49.118 391 391 E DatabaseUtils:android.database.sqlite.SQLiteException:bind或column index超出范围:handle 0x584c30
答案 0 :(得分:1)
确保id
只包含一个字符串。
并确保在尝试从c.moveToFirst()
中提取值之前致电Cursor
,因为它可能为空。