日期时间与时间戳字段

时间:2017-03-17 08:16:22

标签: mysql

我是MySQL数据库的新手。

您是否建议在表创建中使用日期时间或时间戳字段以及原因。 我正在使用MySQL 5.7和innodb引擎。

由于

3 个答案:

答案 0 :(得分:2)

对于创建字段,我会使用时间戳。你不会以这种方式遇到时区问题,这可能非常棘手。

时间戳对于例如生日没有用,因为你必须处理EPOCH又名时间戳'0',即1970年1月1日。但是对于创作时间它应该没关系。

答案 1 :(得分:2)

我会将TIMESTAMP用于需要自动管理的任何内容,因为它支持ON UPDATE CURRENT_TIMESTAMPCURRENT_TIMESTAMP等内容作为默认值。

DATETIME这是不可能的,但我更喜欢格式,因为您不需要转换它。所以我将其用于其他一切。

如果您需要一种可以自动生成的灵活格式,那么您可能必须使用TIMESTAMP并在需要时进行转换。

答案 2 :(得分:-3)

MySQL中的时间戳通常用于跟踪记录的更改,并且每次更改记录时都会更新。如果要存储特定值,则应使用日期时间字段。

如果您想要在使用UNIX时间戳或本机MySQL日期时间字段之间做出决定,请使用本机格式。您可以使用("SELECT DATE_ADD(my_datetime, INTERVAL 1 DAY)")方式在MySQL中进行计算,如果要使用PHP对其进行操作,则可以在查询记录时将值的格式更改为UNIX时间戳("SELECT UNIX_TIMESTAMP(my_datetime)")

因此,最适合在大多数数据库操作中使用datetime