SQLite查询什么都不返回

时间:2011-10-31 01:52:19

标签: android sqlite

我在SQLite中有这个查询,我希望根据传递的日期返回一个值。日期在数据库中作为String。我知道数据库中有数据与该日期,但它只返回任何内容。我不知道为什么。当我在没有comparisson参数的情况下进行查询时,它会正常返回所有数据,但是在查询方法中使用WHERE子句会停止返回。也许它只是SQL语法的问题。无论如何,这是声明:

Cursor cursor = db.query(TABLE, new String[] {"_id", "value"}, "current_date = ? ", new String[] {date}, null, null, null);

修改

我在SQLite数据库浏览器中进行了此查询,并且它不返回任何值。即使它在那里。

我看到这很有趣也很困惑。我已经在数据库浏览器和手机上进行了测试,当我通过当天的“今天”时,它获取数据,但是当我通过另一天不是今天,它什么也没有返回。非常非常奇怪。

在数据库浏览器中,我选择了包含日期的列,它只返回“今天”日期,即使在有其他日期之前也是如此。

2 个答案:

答案 0 :(得分:0)

如果您的日期以'dd-mm-yyyy'格式存储在数据库中,那么请尝试使用它 - 如< - p>

Calendar cal=Calendar.getInstance();
Cursor cursor = db.query(TABLE, new String[] {"_id", "value"}, "date = ? ", String.format("%1$td-%1$tm-%1$tY",cal), null, null, null);

有关其他格式,请参阅http://download.oracle.com/javase/1.5.0/docs/api/java/util/Formatter.html

答案 1 :(得分:0)

列名是'current_date',这是一个SQLite函数名。所以它没有得到其他日期,只是当前日期。

相关问题