我总是随意选择DATETIME或TIMESTAMP。每个人的利弊是什么,你使用什么以及为什么? (我意识到有些更详细,我通常会寻找年/月/日/小时/分钟/秒的分辨率,而我目前正在使用PHP,AS3和Objective-C。
谢谢!
答案 0 :(得分:1)
可以自动更新/创建时间戳,并且可以反映更改时区mysql会话变量。同样date
可以存储更广范围的日期(2038对9999)。
至于我 - 我更喜欢在任何地方使用时间戳,因为很容易在用户的时区显示时间。
SET time_zone='$tz'
其中$ tz是格式+10:00
的偏移量或字符串时区表示,如Asia/Vladivostok
。执行此查询后 - 所有日期将自动转换为预期时区。从另一个角度来看 - 您存储在数据库中的每个日期都将存储在当前时区的一瞥中。 (timestamp
以UTC格式存储,而mysql根据time_zone
变量向您返回数据时会偏移它。