SQLite日期问题

时间:2011-03-04 18:17:31

标签: java sql

在我的SQLiteDb中,我将日期存储为文本,格式如下:

3-1-2011
3-5-2011
3-15-2011

我知道......不理想。无论如何,我使用WHERE日期BETWEEN date1和date2从表中提取数据。但它没有正常工作。大概是因为它将日期视为:

        3-1-2011
        3-10-2011
        3-11-2011
        ...
        3-2-2011
        3-20-2011
        3-21-2011
        ...

如果不修改我的表并更新所有值,有没有办法解决这个问题?

1 个答案:

答案 0 :(得分:1)

1。1日期和时间数据类型

SQLite没有预留用于存储日期和/或时间的存储类。相反,SQLite的内置日期和时间函数能够将日期和时间存储为TEXT,REAL或INTEGER值:

  • TEXT as ISO8601字符串(“YYYY-MM-DD HH:MM:SS.SSS”)。
  • 真实的朱利安日数,即公元前4714年11月24日格林威治中午以来的天数。根据预感格里高利历。
  • INTEGER as Unix Time,自1970-01-01 00:00:00 UTC以来的秒数。

应用程序可以选择以任何格式存储日期和时间,并使用内置的日期和时间函数在格式之间自由转换。

SQLite Datatypes Description

请查看以下其他有用信息:Date And Time Functions