【发布时间】:2012-04-04 07:57:46
【问题描述】:
我需要在数据库中创建一个播放列表,以了解播放器何时播放每个视频。
我会使用这样的东西:
table playlist with: id, video_id, play_time,例如如果 play_time 是 2012-04-10 14:00:00,则视频应在 2012-04-10 的 14:00:00 播放,但与用户所在的时区有关。
这个日期时间或时间戳用什么更好?
【问题讨论】:
-
您最好将所有时间存储为 UTC,然后调整应用程序为用户进行本地 TZ 转换。
-
为什么使用“更好”的东西很重要?您显然需要来自用户的信息,告诉您他们在哪个时区。如果您使用
datetime并将其存储为 UTC(欧洲/伦敦),那么您将获得与使用默认为 UTC 的timestamp相同的效果。无论发生什么,您都需要用户提供有关其时区的信息,以便计算所需的偏移量。答案是——两者兼而有之。您可以使用这两种类型来存储日期数据。是您的应用程序为您的查询提供需要包含时区偏移的所需日期。
标签: mysql datetime timezone timestamp