4

我正在尝试使用以下内容:

String dbquery = "Select * From stops where stopname LIKE '%?%' LIMIT 100";
String[] uinputarray = {uinput};
Cursor c = sDB.rawQuery(dbquery, uinputarray);

这一直崩溃。

奇怪的是,如果我使用旧的测试代码:

Cursor c = sDB.rawQuery("Select * From stops where stopname LIKE '%" + uinput + "%' LIMIT 100", null);

它完美无缺。

我一直在阅读 selectionArgs,老实说,我看不出我所做的有什么问题。

我究竟做错了什么?

多谢你们

4

1 回答 1

7

您必须将 % 附加到 selectionArgs 本身:

selectionArgs = new String[] { searchString + "%" };

光标 c = db.rawQuery("SELECT column FROM table WHERE column=?", selectionArgs);

注意:因此,searchString 字符串中的 % 和 _ 仍可用作通配符!

于 2012-05-04T09:33:16.887 回答