如何在明天的日期中以字符串和日期格式获取明天日期以在sqlite查询中使用?

时间:2018-11-10 08:25:11

标签: java android android-sqlite

我正在尝试删除s表中的某些记录,其中date是今天的日期和明天的日期

Dim Lista_documents = Response("list")

但想使用Sqlite查询以字符串和日期格式获取它们。

1 个答案:

答案 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_Datetomorrow_Date的值,而不是字符串"current_Date""tomorrow_Date"的值。
这将删除包含当前日期和明天日期的所有行。