news 2026/6/26 5:06:39

SQLite3学习笔记3:UTC和CST 时区偏差问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQLite3学习笔记3:UTC和CST 时区偏差问题

1. 校准 Ubuntu 系统时间 / 时区

若系统时间本身和实际时间对不上,执行以下命令校准需同理校准时区 / 同步 NTP 时间):

# 1. 设置时区为上海(嵌入式设备常用时区)sudotimedatectl set-timezone Asia/Shanghai# 2. 安装时间同步工具(Ubuntu)sudoaptinstallntpdate -y# 3. 同步网络时间(嵌入式设备可对接NTP服务器,无网络则手动设置)sudontpdate pool.ntp.org# 验证时间是否正确date

2. 解决时间戳差 8 小时的问题

SQLite3 的CURRENT_TIMESTAMP默认生成的是UTC 时间(世界协调时间),而 Ubuntu 系统显示的是CST 时间(中国标准时间,UTC+8),所以数据库中记录的时间会比本地时间少 8 小时。

  • 数据库时间:2026-01-26 10:15:46(UTC)
  • 本地时间:2026-01-26 18:15:46(CST = UTC+8)
方案 1:查询时转换时区

核心逻辑:原始数据存 UTC(国际标准,便于跨时区设备溯源),查询时转换为 CST(UTC+8)。

// 原查询语句SELECT*FROMdevice_params;// 新查询语句(转换为CST时间)SELECTid,param_name,param_value,datetime(update_ts,'+8 hours')ASupdate_ts_cstFROMdevice_params;

结果如下:

// UTC1|temp|26.0|2026-01-2610:15:462|humidity|60.2|2026-01-2610:15:46// CST1|temp|26.0|2026-01-2618:15:462|humidity|60.2|2026-01-2618:15:46
方案 2:插入 / 更新时直接存 CST 时间

核心逻辑:插入 / 更新时显式指定时区偏移,让update_ts直接存储 CST 时间 —— 适合仅在国内使用、无需跨时区的嵌入式设备。

操作步骤(修改 INSERT/UPDATE 语句)
  1. 插入数据时直接存 CST
// 原插入语句(存UTC)INSERTINTOdevice_params(param_name,param_value)VALUES('temp',26.5),('humidity',61.0);// 新插入语句(存CST,显式+8小时)INSERTINTOdevice_params(param_name,param_value,update_ts)VALUES('temp',26.5,datetime(CURRENT_TIMESTAMP,'+8 hours')),('humidity',61.0,datetime(CURRENT_TIMESTAMP,'+8 hours'));

结果如下:

// UTC3|temp|26.5|2026-01-2611:03:554|humidity|61.0|2026-01-2611:03:55// CST5|temp|26.5|2026-01-2619:04:166|humidity|61.0|2026-01-2619:04:16
  1. 更新数据时同步存 CST
// 原更新语句(存UTC)UPDATEdevice_paramsSETparam_value=27.0,update_ts=CURRENT_TIMESTAMPWHEREparam_name='temp';// 新更新语句(存CST)UPDATEdevice_paramsSETparam_value=27.0,update_ts=datetime(CURRENT_TIMESTAMP,'+8 hours')WHEREparam_name='temp';

结果如下:

// UTC1|temp|27.0|2026-01-2611:14:133|temp|27.0|2026-01-2611:14:135|temp|27.0|2026-01-2611:14:13// CST1|temp|27.0|2026-01-2619:14:183|temp|27.0|2026-01-2619:14:185|temp|27.0|2026-01-2619:14:18
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/11 6:18:07

SpringCloud多平台如何跨平台上传大文件?

大文件传输系统解决方案 背景与需求分析 作为河南某上市集团的项目负责人,我们当前面临一个关键的技术挑战:需要为政府、央企等高端客户构建一个安全可靠的大文件传输系统。经过详细的需求调研,我整理了以下核心需求点: 超大文…

作者头像 李华
网站建设 2026/6/23 12:39:42

鸣潮自动化工具高效指南

鸣潮自动化工具高效指南 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸上锁合成 自动肉鸽 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-waves 鸣潮自动化工具是一款基于图像识别技术的游戏辅助…

作者头像 李华
网站建设 2026/6/10 18:02:07

AI视频推镜神器:让画面瞬间拥有电影感的LoRA工具

AI视频推镜神器:让画面瞬间拥有电影感的LoRA工具 【免费下载链接】Motion-Lora-Camera-Push-In-Wan-14B-720p-I2V 项目地址: https://ai.gitcode.com/hf_mirrors/lovis93/Motion-Lora-Camera-Push-In-Wan-14B-720p-I2V 近日,一款名为Motion-Lora…

作者头像 李华
网站建设 2026/6/5 3:20:07

Qwen3-Next-80B:256K上下文推理效率革命

Qwen3-Next-80B:256K上下文推理效率革命 【免费下载链接】Qwen3-Next-80B-A3B-Instruct Qwen3-Next-80B-A3B-Instruct 是一款支持超长上下文(最高 256K tokens)、具备高效推理与卓越性能的指令微调大模型 项目地址: https://ai.gitcode.com…

作者头像 李华
网站建设 2026/6/23 9:18:57

OpCore Simplify:智能黑苹果EFI构建工具深度解析与实践指南

OpCore Simplify:智能黑苹果EFI构建工具深度解析与实践指南 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 项目概述:OpenCore…

作者头像 李华