MySQL在datetime更新时增加3小时

MySQL在datetime更新时增加3小时,mysql,Mysql,假设我有下表: CREATE TABLE `cases` ( `case_id` int(11) unsigned NOT NULL AUTO_INCREMENT, `date` datetime NOT NULL DEFAULT utc_timestamp ) 服务器时区为CET,即夏季UTC+1和UTC+2;虽然用户界面是土耳其,但全年都是UTC+3 我没有更改服务器时区或会话时区的权限 是否可以在插入/更新时向日期字段添加一个默认值,使其始终存储土耳其时间 我的想法类似于默认当前

假设我有下表:

CREATE TABLE `cases` (
  `case_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `date` datetime NOT NULL DEFAULT utc_timestamp )
服务器时区为CET,即夏季UTC+1和UTC+2;虽然用户界面是土耳其,但全年都是UTC+3

我没有更改服务器时区或会话时区的权限

是否可以在插入/更新时向
日期
字段添加一个
默认值
,使其始终存储土耳其时间

我的想法类似于
默认当前日期+间隔3小时
,但我的MySQL版本是5.7,这意味着根据MySQL.com*网站,我不能使用expression,这就是为什么我在寻找不同的解决方案

  • case\u id
    必须定义为主键
  • utc\u时间戳
    功能不存在
  • 默认情况下不能使用表达式,但可以使用生成的列
  • CREATE TABLE`cases`(
    `case_id`int(11)无符号非空自动增量主键,
    utc_date datetime非空默认当前_时间戳,
    `日期`日期时间为(utc_日期+间隔3小时));
    
    请记住-更改
    utc_日期
    值将相应地更改生成的列值