繁体   English   中英

用于在mySQL中存储日期的数据类型

[英]Datatype to store dates in mySQL

我无法找到一个好答案的快速问题。 当我开始使用PHP和mySQL时,我学会了将日期/时间存储为Unix时间戳。 mySQL数据类型是BIGINT,PHP的日期函数在处理这个方面做得很好。 当我查看文档时,似乎Timestamp数据类型变得更加突出。 存储日期过时的BIGINT方式是什么? 对于现在哪种方法更好用,是否存在一般思路?

我知道timestamp数据类型具有默认值或更新的“当前时间戳”,这很好。

想法?

提前致谢

我要给出的主要论点是这个数据类型是为作业设计的。

timestamp一个优点是软件知道该数字实际上是一个日期并且将显示人类可读日期。 将日期存储为int时,这始终是一个问题。

需要记住的一件事是, timestamp在1970年1月1日之前的日期不起作用,但这与int方法没有什么不同。

安德鲁,你不应该使用任何类型的INT数据类型来保持日期。 MySQL提供了很多选项,例如TIMESTAMP(如你所提到),DATETIME,DATE,TIME,YEAR。 您还可以更轻松地使用本机MySQL时间函数。 所以,没有理由真正使用任何其他数据类型。

[编辑]

MYSQL文档非常清楚它的数据类型:

The DATETIME type is used for values that contain both date and time parts. MySQL retrieves and displays DATETIME values in ‘YYYY-MM-DD HH:MM:SS’ format. The supported range is ’1000-01-01 00:00:00′ to ’9999-12-31 23:59:59′.

The TIMESTAMP data type is used for values that contain both date and time parts. TIMESTAMP has a range of ’1970-01-01 00:00:01′ UTC to ’2038-01-19 03:14:07′ UTC.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM