我在虚拟 ubuntu 服务器上运行一个小型爬虫,每小时由 crontab 启动一次。默认将日期字段设置为 ,从而插入日期时间TIMESTAMP DEFAULT CURRENT_TIMESTAMP
。
表创建如下:
CREATE TABLE links (page TEXT, link TEXT, date TIMESTAMP DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY(page,link));
日期时间存储得很好,但比挪威时间 (GMT +1) 晚了一个小时。服务器位于任何地方,我只需要它位于 GMT+1。
date
通过在 ssh 会话中输入,我得到:
Wed Dec 19 17:26:02 CET 2012
(现在)这是正确的。
那么 sqlite3 从哪里获取时间?我必须做什么才能设置时间,以便 sqlite3 获取正确的时间?
答案1
sqlite 以 utc 格式存储日期。要查看本地时区的日期,请使用 localtime 修饰符。
select datetime(date,'localtime') from links;