【发布时间】:2012-09-09 21:51:15
【问题描述】:
我在 SQLite 数据库中执行以下查询:
" ...WHERE mydate >= '" + inicialdate + "' AND mydate <= '" + finaldate + "'";
mydate 是数据库中的字段,键入 DATE。 inicialdate 和 finaldate 是字符串。
这里的想法是在用户给定的两个不同日期之间执行查询。
我使用 DataPicker 来允许用户输入数据。
所以,我从 DatePicker 获取这些日期,并将它们放入 inicialdate 和 finaldate 字符串中。
我输入字符串的日期格式是“YYYY-MM-DD”。
当我在 finaldate 字符串中输入一些值时,查询返回了一些内容,但是当我将日期放入两个字符串中,或者只是在第一个字符串中时,我从查询中没有收到任何信息。
【问题讨论】:
-
虽然 SQLite 中的
DATEtype 实际上是一个数值,但 SQLite 使用类型亲和性,所以没关系。您所描述的应该可以工作,您能否提供一个查询失败的可运行示例? -
假设:我的数据库中有数据 2012-09-09。所以我想通过查询找到它。所以我尝试输入以下值:initialdate = 2012-09-08 和 finaldate = 2012-09-10。它只是行不通。但是当我将初始日期留空并输入 finaldate = 2012-09-10 时。我出于某种原因工作。
-
我删除了我的“答案”,因为这只是一个对 cmets 来说过于详细的建议,但我的提议仍然有效,如果您需要更多帮助并可以提供具体信息,请告诉我。
-
非常感谢您的帮助,山姆。我终于找出了问题所在。我编辑了问题,并且有解决问题的方法。再次感谢!