我想在 SQLite 中创建一个表,其中一个字段是日期,当前实例的日期和时间应该保存在其中。我应该使用哪种数据类型?
我打算使用“时间戳”。如何将当前时间戳值插入字段?另外如何为此日期字段编写内容值?
我想在 SQLite 中创建一个表,其中一个字段是日期,当前实例的日期和时间应该保存在其中。我应该使用哪种数据类型?
我打算使用“时间戳”。如何将当前时间戳值插入字段?另外如何为此日期字段编写内容值?
SQLite 支持标准 SQL 变量CURRENT_DATE
、CURRENT_TIME
和CURRENT_TIMESTAMP
:
INSERT INTO Date (LastModifiedTime) VALUES(CURRENT_TIMESTAMP)
SQLite 中日期/时间的默认数据类型是TEXT
.
ContentValues
不允许使用通用 SQL 表达式,只能使用固定值,因此您必须在 Java 中读取当前时间:
cv.put("LastModifiedTime",
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
INSERT INTO Date (LastModifiedTime) VALUES(DateTime('now'))
使用此站点以供进一步参考。
要获取当前本地(系统)时间,请添加 'localtime' 选项:
选择日期时间('现在','本地时间');
我在我的应用程序中经常使用时间戳。对我来说,保持时间戳的最佳方式是以毫秒为单位进行转换。之后,很容易将其转换为任何语言环境。
如果您需要当前时间,请使用 System.currentTimeMillis()。内容值很容易使用,你只需加上字段和值,比如:
ContentValues ins_reminder = new ContentValues();
ins_reminder.put("REMIND_TIMESTAMP", System.currentTimeMillis());