0
我無法使用'like'來顯示相應的產品以搜索包含相關單詞的產品名稱。SQLite LIKE搜索
String sql = "SELECT "+WPTemplateDB.PRODUCT_TABLE+".*"
+" FROM "+WPTemplateDB.PRODUCT_TABLE+" product"
+" JOIN "+WPTemplateDB.CATEGORY_TABLE+" cat"
+" ON product."+WPTemplateDB.PRODUCT_ID+"= cat."+WPTemplateDB.PRODUCT_ID
+" WHERE "+column+" "+(column==WPTemplateDB.TITLE?"LIKE":"=")+" ?";
Log.d("sql", sql);
Log.d("query",(column==WPTemplateDB.TITLE?("%"+query+"%"):query));
Cursor cursor = db.rawQuery(sql, new String[]{(query==WPTemplateDB.TITLE?"%"+query+"%":query)});
Log.d("count", cursor.getCount()+"");
if (cursor.getCount()>0){
while (cursor.moveToNext()){
Log.d("product", cursor.getInt(cursor.getColumnIndex(WPTemplateDB.PRODUCT_ID))+"");
Product product = new Product(cursor.getInt(cursor.getColumnIndex(WPTemplateDB.PRODUCT_ID)), db);
gridProduct.add(product);
}
return gridProduct;
} else {
return new ArrayList<Product>(); //avoid returning null
}
當我搜索標題只是一個字符「a」(這肯定存在一個‘產品有一個標題’),日誌顯示它正確地轉換爲%A%但伯爵出來0,什麼都沒有搜索........當這個來與'='不'喜歡'它是工作!爲什麼??
多麼愚蠢的錯誤,我已經讓XD,thx – Simon