2012-01-03 56 views

回答

37

您可以簡單地使用SQL查詢來刪除。

public void delete(String id) { 
     db.execSQL("delete from "+TBL_NAME+" where Google='"+id+"'"); 
    } 

在你查詢你傳遞null代替whereArgs

db.delete(table, whereClause, whereArgs) 

它應該是這樣的

db.delete(TBL_NAME, "Google=?", new String[]{Integer.toString(id)}); 
+1

+1同意將'whereClause'作爲** Google =?** – 2012-01-03 05:38:59

2
database.delete("tablename", "column_name=?", new String[] {Integer.toString(id)}); 
  • WHERE條件值應該給出一個字符串數組
6

試試這個

public boolean favoriteDelete(int id) { 
    return db.delete(DATABASE_TABLE, KEY_ROWID + "=" + id, null) > 0; 
} 
+2

我可以知道您的答案和用戶的問題有什麼不同嗎? – 2012-01-03 05:57:45

0

中添加單引號你的where子句...

return database.delete("FavoriteData", "Goggle" + "='" + id+"'", null) > 0; 
0

使用佔位符比字符串操作更好。確定爲int的,但只要你把字符串放在那裏,事情就會出錯。

String where = COLUMN_NAME_ADDRESS + " = ?"; 
    String[] whereArgs = { String.valueOf(address) }; 

    SQLiteDatabase db = mDbHelper.getWritableDatabase(); 
    db.delete(TABLE_NAME_DEVICES, where, whereArgs);