Gab*_*lle 1 sqlite datetime android utc
每次我对 SQLite 表中的某个记录进行更改时,我都需要在 lastChangedDate 列中设置来自法国的时间。这是我的表的结构:
CREATE TABLE name(
id VARCHAR(36) PRIMARY KEY
, pos_report_id VARCHAR(36)
, path_name VARCHAR(64)
, photo_name VARCHAR(64)
, from_scratch INTEGER DEFAULT 0
, lastChangedDate DATETIME DEFAULT (DATETIME('now', 'utc', '1 hours'))
)
Run Code Online (Sandbox Code Playgroud)
我看到它比DATETIME('now')我的实际时间早 2 小时DATETIME('now', 'utc', '1 hours')返回,比我的时间早 3 小时返回。为什么会发生这种情况?我需要该应用程序在更多国家/地区工作,因此我无法使用localtime.
知道如何解决这个问题吗?
我有同样的问题(在 Raspbarry Pi 上使用 sqlite)。'utc' 显然只根据位置和时区计算差异。我让它像这样运行:
select datetime(datetime('now', 'localtime'), 'utc');
Run Code Online (Sandbox Code Playgroud)
还要查看我的 VIEW [NOW] 的其他变体,用于传感器记录目的。
CREATE VIEW [NOW] AS
SELECT datetime('now', 'localtime') as LOCAL,
datetime(datetime('now', 'localtime'),'utc') as UTC,
substr(datetime('now', 'localtime'),1,17)||'00' as TimeSlot_1min,
substr(datetime('now', 'localtime'),1,15)||'0:00' as TimeSlot_10min,
substr(datetime('now', 'localtime'),1,14)||'00:00' as TimeSlot_1h;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3607 次 |
| 最近记录: |