DATE 和 TIME 的最佳数据类型是什么

beg*_*ner 5 mysql datetime

我有一个应用程序可以保存交易的日期和时间。我最初的数据库设计是DATE为日期和TIMEvarchar创建单独的字段。我的第二个选择是有一个带有DATETIME.

这两个有什么区别??

Rah*_*thi 5

我建议使用 TIMESTAMP,因为这将帮助您跟踪对数据库所做的每个更改。如果您想在列中存储日期和时间的特定值,您应该使用 DateTime 数据类型。但是,如果您想跟踪对您的值所做的更改,那么我建议使用 TIMESTAMP。来自 MYSQL文档

当您需要包含日期和时间信息的值时,使用 DATETIME 类型。MySQL 以 'YYYY-MM-DD HH:MM:SS' 格式检索和显示 DATETIME 值。支持的范围是“1000-01-01 00:00:00”到“9999-12-31 23:59:59”。

...

TIMESTAMP 数据类型的范围是 '1970-01-01 00:00:01' UTC 到 '2038-01-09 03:14:07' UTC。它具有不同的属性,具体取决于 MySQL 版本和服务器运行的 SQL 模式。

  • @user2419435:-我最好的猜测是到那时,要么会出现一些具有更大范围的新数据类型,但截至目前还没有官方消息!一本好书:http://en.wikipedia.org/wiki/Year_2038_problem (2认同)