Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQLite中的UTC时间错误_Sqlite_Utc_Localtime - Fatal编程技术网

SQLite中的UTC时间错误

SQLite中的UTC时间错误,sqlite,utc,localtime,Sqlite,Utc,Localtime,我的Centos 7.6服务器物理上位于德国,但经过配置,可以为我(在伦敦)提供正确的本地时间和UTC时间 $ date Tue Jul 16 08:31:51 BST 2019 $ date -u Tue Jul 16 07:31:55 UTC 2019 但在SQLite数据库中,情况并不正确 $ !sql sqlite3 apollo.db SQLite version 3.7.17 2013-05-20 00:56:22 Enter ".help" for instructions E

我的Centos 7.6服务器物理上位于德国,但经过配置,可以为我(在伦敦)提供正确的本地时间和UTC时间

$ date
Tue Jul 16 08:31:51 BST 2019
$ date -u
Tue Jul 16 07:31:55 UTC 2019
但在SQLite数据库中,情况并不正确

$ !sql
sqlite3 apollo.db 
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> select datetime('now');
2019-07-16 07:32:48
sqlite> select datetime('now', 'localtime');
2019-07-16 08:32:53
sqlite> select datetime('now', 'utc');
2019-07-16 06:32:58
它正确地显示了当地时间,但UTC是一小时以外的时间。是否有一个配置设置,我可以调整来解决这个问题

更新:正常。仔细阅读后,我似乎误解了,这种行为是a)正确的,b)预期的<代码>选择日期时间(“现在”)是获取UTC时间的正确方法。所以现在我只是有点困惑,
selectdatetime('now','utc')
在做什么(可能没有什么用处)

更新:好的。仔细阅读了文档后,我似乎误解了,这种行为是a)正确的,b)预期的。选择datetime(“now”)是获取UTC时间的正确方法。所以现在我对selectdatetime(‘now’、‘utc’)在做什么感到有点困惑(可能没什么用处)

示例前的最后一段解释如下:-

“utc”修饰符是“localtime”相反的

“utc”假定其左侧的字符串位于本地时区,并将该字符串调整为utc

如果前面的字符串不在本地时间中,则“utc”的结果未定义


utc修饰符与localtime相反。“utc”假定其左侧的字符串位于本地时区,并将该字符串调整为utc。如果前面的字符串不在localtime中,则“utc”的结果未定义@米凯特:谢谢你的解释。如果你把它作为答案贴出来,我会接受的。