我有一个参数,用户可以选择存储数据的时间段。
我将其读取到days
变量中。记录添加到数据库中的日期和时间存储在KEY_DATE_ADDED
中,创建方式如下:
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // sql date format
Date date = new Date();
initialValues.put(KEY_DATE_ADDED, dateFormat.format(date));
然后我接着做以下步骤:
mDb.delete(DATABASE_TABLE,
"date(now) > date(" + KEY_DATE_ADDED + ",+" + days + " days)",
null);
它无法工作。 实际查询(where 部分)看起来像:
WHERE date(now) > date(date_added,+10 days)
这里有什么不正确的? 看起来应该使用其他东西而不是 date_added
。
我希望使用SQL数据格式化,以避免多次重新格式化日期。
是否有 Android 数据库的GUI可以测试实际数据上的 SQL 查询?
date('now') > date('date_added','+10 days')
- 现在它可以工作了。所以,唯一的问题就是关于GUI的。 - LA_adb pull /data/data/<namespace>/databases/<dbName>
命令从模拟器中拉取数据库。我使用 Firefox 插件 "SQLite Manager" 来查看或编辑数据库。 - Rajath