相关疑难解决方法(0)

Mysql:将DB从本地时间转换为UTC

我需要从本地时间ut UTC转换现有(日期时间字段)数据库.

这些值将广告日期时间存储在服务器上,时区为CET(+1)(夏令时+2).选择我使用的数据时UNIX_TIMESTAMP(),它会神奇地补偿所有内容,即时区转移和dst(如果我已经正确阅读了文档).

我正在将数据库移动到以UTC为系统时间的新服务器.

简单地减去-1 H将不起作用,因为夏季时间为+2.

有什么想法聪明地做到这一点?(使用sql或一些脚本lang)

mysql timezone utc unix-timestamp

13
推荐指数
2
解决办法
2万
查看次数

用时区和夏令时确定一天的开始

我在会话中将用户的时区存储为小数.例如,如果用户在EST时区,我就有

UserTimeZone = -5.00;
Run Code Online (Sandbox Code Playgroud)

数据库中的数据以UTC格式存储,因此我想计算该用户当天的开始和结束时间,以便当用户想要特定日期的数据时,记录会按时区进行调整.

这就是我正在做的事情:

DateTime StartDate =  DateTime.Now.ToUniversalTime();

StartDate = StartDate.AddHours((double)UserTimeZone);
StartDate = StartDate.Date;
StartDate = StartDate.AddHours((double)UserTimeZone);

DateTime EndDate = StartDate.AddHours(24);
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,这不考虑夏令时,所以即使考虑到EST时间比UTC晚了5个小时,目前由于夏令时的变化,它实际上落后于UTC 4小时.

你有什么建议吗?谢谢.

c# asp.net

8
推荐指数
1
解决办法
2966
查看次数

标签 统计

asp.net ×1

c# ×1

mysql ×1

timezone ×1

unix-timestamp ×1

utc ×1