SQLite存储当前日期,时间由defaut设置为00:00:00

SQLite存储当前日期,时间由defaut设置为00:00:00,sqlite,android-sqlite,unix-timestamp,Sqlite,Android Sqlite,Unix Timestamp,我有一个SQLite表,其中一列是: timestamp long DEFAULT CURRENT_TIMESTAMP NOT NULL 它将UTC日期和时间以及时间存储在数据库中。由于时间对我来说并不重要,我如何将其存储为defaut设置为00:00:00的时间?您应该使用: timestamp long DEFAULT CURRENT_DATE NOT NULL 顺便问一下-您知道这种格式是以文本形式存储的吗(如您所见)?在许多情况下,尤其是当您有理由为此字段编制索引时,使用整数更为有效

我有一个SQLite表,其中一列是:

timestamp long DEFAULT CURRENT_TIMESTAMP NOT NULL
它将UTC日期和时间以及时间存储在数据库中。由于时间对我来说并不重要,我如何将其存储为defaut设置为00:00:00的时间?

您应该使用:

timestamp long DEFAULT CURRENT_DATE NOT NULL
顺便问一下-您知道这种格式是以文本形式存储的吗(如您所见)?
在许多情况下,尤其是当您有理由为此字段编制索引时,使用整数更为有效,在插入/更新时,只需小心使用低级长日期/时间表示法,即可允许以您想要的方式修改日期值:

timestamp text DEFAULT (date('now', 'start of day')) NOT NULL
如果要将值存储为数字,可以将其适当转换为:

timestamp long DEFAULT (strftime('%s', 'now', 'start of day')) NOT NULL