首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在Android中使用SQLite的WHERE on DATE列检索数据库记录

无法在Android中使用SQLite的WHERE on DATE列检索数据库记录
EN

Stack Overflow用户
提问于 2016-01-27 06:42:59
回答 2查看 901关注 0票数 1

我正在开发一个教程项目,并使用SQLite数据库。我试图在数据库中使用WHERE on DATE列检索记录。但它什么也没有收回。我的密码怎么了?

CREATE数据库助手类中的语句

代码语言:javascript
复制
private static final String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + " ("
                                + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," 
                                + COLUMN_DESCRIPTION + " TEXT," 
                                + COLUMN_DATE + " DATE,"
                                + COLUMN_DONE + " BOOLEAN)";

这是检索记录的方式

代码语言:javascript
复制
String date = "04-22-2014";
ArrayList<Task> tasks = new ArrayList<Task>();
db = getReadableDatabase();
String query = "SELECT * FROM "+TABLE_NAME + " where "+ COLUMN_DATE + " = "+ date;
Cursor cursor = db.rawQuery(query,null);
if(cursor.moveToFirst())
{
    do{
        Task task = new Task();
        task.setId(cursor.getInt(0));
        task.setDescription(cursor.getString(1));
        task.setDate(cursor.getString(2));
        task.setDone(Boolean.valueOf(cursor.getString(3)));
        tasks.add(task);
    }
    while(cursor.moveToFirst());
}

return tasks;

但它并没有归还任何记录。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-27 07:05:45

从基于Date.You的sqlite数据库中获取数据需要使用标准的数据格式,而插入数据和基于date.The标准的数据检索是YYYY DD。欲了解更多信息:datefunc.html

试试这个..。

代码语言:javascript
复制
String date = "2014-04-22";

而不是

代码语言:javascript
复制
String date = "04-22-2014";

在以sqlite格式保存日期时,您需要设置上面提到的格式。

日期和时间数据类型

SQLite没有预留用于存储日期和/或时间的存储类。相反,SQLite的内置日期和时间函数能够将日期和时间存储为文本、实值或整数值

TEXT作为ISO8601字符串(“YYYY DD HH:MM:SS.SSS")。

REAL作为朱利安日号,是公元前4714年11月24日格林威治正午以来的天数,根据公历。

整数作为Unix时间,秒数自1970-01-01 00:00:00 UTC.应用程序可以选择以任何一种格式存储日期和时间,并可以使用内置的日期和时间函数在格式之间自由转换。

票数 1
EN

Stack Overflow用户

发布于 2016-01-27 06:48:27

尝尝这个

代码语言:javascript
复制
String query = "SELECT * FROM "+TABLE_NAME + " where "+ COLUMN_DATE + " = "+ "'"+date+"'";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35030439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档