我正在尝试删除s表中的某些记录,其中date是今天的日期和明天的日期
Dim Lista_documents = Response("list")
但想使用Sqlite查询以字符串和日期格式获取它们。
答案 0 :(得分:1)
首先,我必须说,将日期以SQLite
的格式存储在"dd/MM/yyyy"
中是错误的,因为这不是一种可比较的格式,因此当您要在两行之间获取行时,不容易使用它来进行选择日期。此外,SQLite
的日期函数无法识别此格式,因此您将需要每次进行转换。
最好使用以下格式:"yyyy-MM-dd"
。
使用此代码:
Calendar calendar = Calendar.getInstance();
Date c = calendar.getTime();
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
String current_Date = df.format(c);
calendar.add(Calendar.DAY_OF_YEAR, 1);
c = calendar.getTime();
String tomorrow_Date = df.format(c);
db.execSQL("DELETE FROM SchedledMeetings WHERE (Meeting_Date='" + current_Date + "') OR (Meeting_Date='" + tomorrow_Date + "')");
db.close();
请注意,您的DELETE
语句应如下所示:
db.execSQL("DELETE FROM SchedledMeetings WHERE (Meeting_Date='" + current_Date + "') OR (Meeting_Date='" + tomorrow_Date + "')");
这样,您将传递current_Date
和tomorrow_Date
的值,而不是字符串"current_Date"
和"tomorrow_Date"
的值。
这将删除包含当前日期和明天日期的所有行。