gpt4 book ai didi

mysql - 如何更改 mysql TIMESTAMP 的时区

转载 作者:行者123 更新时间:2023-11-29 15:53:37 25 4
gpt4 key购买 nike

嗨,我对 mysql 很陌生,我正在尝试做自动时间戳。但是,我发现 CURRENT_TIMESTAMP 给了我错误的时区(相差 8 小时)。我不想更改机器的时区,因此我查找并找到了 DATE_ADD() 方法。

我尝试在 SQL 脚本中使用 DATE_ADD(CURRENT_TIMESTAMP, INVTERVAL +8 HOUR),但当我执行时它会返回语法错误。

这是我的 SQL 脚本。

DROP DATABASE IF EXISTS testWeatherDB;

CREATE DATABASE testWeatherDB;

use testWeatherDB;

DROP TABLE IF EXISTS data;

CREATE TABLE IF NOT EXISTS data (
id INT NOT NULL AUTO_INCREMENT,
timestamp TIMESTAMP DEFAULT DATE_ADD(CURRENT_TIMESTAMP, INTERVAL +8 HOUR) ON UPDATE DATE_ADD(CURRENT_TIMESTAMP, INTERVAL +8 HOUR),
humidity DECIMAL(6,3) NOT NULL DEFAULT 0.00,
temperature DECIMAL(6,3) NOT NULL DEFAULT 0.00,
pressure DECIMAL(7,3) NOT NULL DEFAULT 0.00,
airqualityindex DECIMAL(6,3) NOT NULL DEFAULT 0.00,
uvindex DECIMAL(6,3) NOT NULL DEFAULT 0.00,
particledensity DECIMAL(6,3) NOT NULL DEFAULT 0.00,
image VARCHAR(20) NOT NULL DEFAULT 'IMG NOT FOUND',
PRIMARY KEY (id)
);

我的脚本中是否存在语法错误,或者我是否以错误的方式使用了DATE_ADD()

最佳答案

MySQL 始终以 UTC 格式存储日期和时间,因此可以轻松转换为不同的时区。 NOW() 或 CURRENT_TIMESTAMP() 返回日期/时间加上您当前配置的时区。

关于mysql - 如何更改 mysql TIMESTAMP 的时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56616962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com