我已經完成了這個工作,它不工作。我得到force close
。如何從SQLite android中的表中刪除一行?
public boolean favoriteDelete(int id) {
return database.delete("FavoriteData", "Google" + "=" + id, null) > 0;
}
我已經完成了這個工作,它不工作。我得到force close
。如何從SQLite android中的表中刪除一行?
public boolean favoriteDelete(int id) {
return database.delete("FavoriteData", "Google" + "=" + id, null) > 0;
}
您可以簡單地使用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)});
database.delete("tablename", "column_name=?", new String[] {Integer.toString(id)});
試試這個
public boolean favoriteDelete(int id) {
return db.delete(DATABASE_TABLE, KEY_ROWID + "=" + id, null) > 0;
}
我可以知道您的答案和用戶的問題有什麼不同嗎? – 2012-01-03 05:57:45
中添加單引號你的where子句...
return database.delete("FavoriteData", "Goggle" + "='" + id+"'", null) > 0;
使用佔位符比字符串操作更好。確定爲int的,但只要你把字符串放在那裏,事情就會出錯。
String where = COLUMN_NAME_ADDRESS + " = ?";
String[] whereArgs = { String.valueOf(address) };
SQLiteDatabase db = mDbHelper.getWritableDatabase();
db.delete(TABLE_NAME_DEVICES, where, whereArgs);
+1同意將'whereClause'作爲** Google =?** – 2012-01-03 05:38:59