删除表中的一行

时间:2014-12-11 11:14:55

标签: android sqlite

我试图从表中删除一行,该行有一个特定的时间日期,这是我在dbhelper中编写的函数:

public void deleteLesson (String timeday) 
              { 
                 SQLiteDatabase db = this.getWritableDatabase(); 
                 db.delete("Lessons",  
                 "'" +timeday+ "' = ? ",  
                 new String[] {timeday}); 
              } 

但是此代码会删除数据库中的所有数据! 任何人都可以告诉我这是什么问题吗?

1 个答案:

答案 0 :(得分:3)

单引号中的

'timeday'是字符串文字。对于数据库中的所有行,将它与相同值的文字进行比较。

您可能想写类似

的内容
db.delete("Lessons",  
             "timeday = ? ",  
             new String[] {timeday});

其中SQL中的timeday是列名。