MySQL Datetime显示错误的时间。 ASP.NET C#

时间:2016-08-08 11:27:59

标签: c# mysql asp.net datetime

我在MySQL表中添加了一个名为“registerdate”的列,此列的数据类型为Datetime(我也尝试过TIMESTAMP),在DEFAULT中我有CURRENT_TIMESTAMP

日期时间在注册后自动显示,显示正确的日期和年份,但显示不正确的小时(-10小时)。
我希望有人知道如何解决它,谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

来自TimeStamp的MySQL文档(强调我的):

  

MySQL将TIMESTAMP值从当前时区转换为UTC进行存储,然后从UTC转换回当前时区进行检索。 (其他类型(例如DATETIME)不会发生这种情况。)默认情况下,每个连接的当前时区是服务器的时间。

https://dev.mysql.com/doc/refman/5.5/en/datetime.html

答案 1 :(得分:0)

在将数据保存到数据库之前,请尝试使用Culture Info保存,如下所示

DateTime dt = DateTime.Now;      
// CultureInfo for German in Germany.
CultureInfo ci = new CultureInfo("de-DE");
Console.WriteLine(dt.ToString("d", ci));