我试图从具有特定日期的表中删除一行,这是我在dbhelper中编写的用于执行此操作的函数:

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


但是这段代码会从数据库中删除所有数据!
谁能告诉我是什么问题?

最佳答案

单引号中的'timeday'是字符串文字。对于数据库中的所有行,将其与相同值的文字进行比较都是正确的。

您可能想写类似

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


SQL中的timeday是列名。

关于android - 删除表中的一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27421532/

10-09 07:05