Android 动态查询 sql 使用 like

Android dynamic query sql using like

我会使用 like 进行查询,使用 % 和动态字符串,但我无法正确执行。 我有一个:

public Cursor query(String s)
 {
String whereClause=COL_ATTRIBUTI + " like '%?%'";
String[] whereArgs=new String[] {s};
 return  getWritableDatabase().query(TABELLA_RICETTE,null,whereClause,whereArgs,null,null,null);
}

COL_ATTRIBUTI 是列的名称,TABELLA_RICETTE 是 table 的名称。 我想获得所有在某处有 s 的东西,所以我使用 %.但我的应用程序崩溃了。正确的语法是什么?

如果您使用 ? 占位符,我认为您需要在参数中加入 % 通配符:

String whereClause = COL_ATTRIBUTI + " like '?'";
String[] whereArgs = new String[] {"%" + s + "%"};