我正在尝试从本地数据库中删除记录..我可以更新记录但不能删除记录..我没有收到任何错误但仍然没有从本地数据库中删除记录..这是代码..
db.deleteReading(complaintNo);
public void deleteReading(String id) {
SQLiteDatabase db = this.getWritableDatabase();
db.delete(TABLE_READINGS, COLUMN_COMPLAINT_NO +"="+ id, null) ; //COLUMN_COMPLAINT_NO is available in my readings table
db.close();
}
请指导我出错的地方
答案 0 :(得分:3)
问题是你没有用单引号括起字符串:
db.delete(TABLE_READINGS, COLUMN_COMPLAINT_NO +"='"+ id + "'", null);
或者您可以使用更常用的方法,并将字符串作为“where arg”传递:
db.delete(TABLE_READINGS, COLUMN_COMPLAINT_NO +"=?", new String[] {id});
答案 1 :(得分:0)
我认为问题出在您的查询中..
int temp=db.delete(TABLE_READINGS, COLUMN_COMPLAINT_NO +"="+ id, null) ;
Log.d("query value",temp);
而不是这个尝试这个
int temp=db.delete(TABLE_READINGS, COLUMN_COMPLAINT_NO +"='"+ id+"'", null) ;
///////// print it in logcat
Log.d("query value",temp);