在MySQL中插入默认TIMESTAMP时的小时差

wwwo4jvm  于 2023-08-02  发布在  Mysql
关注(0)|答案(1)|浏览(96)

我正在使用一个MySQL数据库,其中有一个名为'venta'的表,其中'create_at'字段的类型为TIMESTAMP,默认情况下采用CURRENT_TIMESTAMP值。
当我向表中插入数据时,我注意到'create_at'保存了当前时间值,但提前了4小时。我已经尝试更改数据库服务器和应用程序的时区,但这个问题仍然存在。
我尝试通过以下查询设置时区:SET @@global.time_zone = 'Pacific SA Standard Time';我还尝试使用CONVERT_TZ()函数调整插入时刻的时间,但它仍然有4小时的提前量。
有人知道为什么会发生这种情况吗?我该如何修复它,以便TIMESTAMP反映插入时的确切当前时间?
提前感谢您的帮助。”

4si2a6ki

4si2a6ki1#

设置服务器时区:如果服务器时区不是你所期望的,你可以通过修改MySQL配置文件(my.cnf或my. ini)并在[mysqld]部分下添加以下行来全局设置它:

default_time_zone = 'Pacific SA Standard Time';

字符串
也可以在会话开始时执行以下查询:

SET time_zone = 'Pacific SA Standard Time';

相关问题