2016-06-22 50 views
0

我會使用like進行查詢,使用%和一個動態字符串,但我不能做到這一點。 我有一個:Android動態查詢sql使用像

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表的名稱的名稱。 我想獲得所有s的地方,所以我使用%。但我的應用程序崩潰。什麼是正確的語法?

回答

1

我認爲你需要把%通配符的參數,如果你使用的是?佔位符:

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

我寫字符串whereClause = COL_ATTRIBUTI +;「怎麼樣?」 String [] whereArgs = new String [] {「%」+ s +「%」}; – SctALE

+0

,它似乎工作 – SctALE