一尘不染

DATE,TIME,DATETIME和TIMESTAMP类型之间有什么区别

mysql

我需要将 时间日期 都存储在mysql中。所以我使用了NOW()函数。但是我不知道我应该为phpmyadmin 类型列
使用什么。应该注意的是,NOW()返回时间和日期都是这样的:

2014-11-11 12:45:34

这是一个解决方案,我可以使用分隔符来分隔日期和时间(2014-11-1112:45:34),然后将它们分别存储在DATE类型和TIME类型中。或者,我可以使用VARCHAR类型将它们都存储在一列中。但是我认为这些方法不是标准的。存储日期和时间的标准类型是什么?

这是我的查询:(同样我也不知道为什么NOW()函数不起作用)

INSERT INTO table (timedate) VALUES (NOW())

阅读 396

收藏
2020-05-17

共1个答案

一尘不染

DATE: 用于具有日期部分但没有时间部分的值。MySQL检索并以 YYYY-MM-DD
格式显示DATE值。支持的范围是1000-01-019999-12-31

DATETIME: 用于包含日期和时间部分的值。MySQL检索并以 YYYY-MM-DD HH:MM:SS
格式显示DATETIME值。支持的范围是1000-01-01 00:00:009999-12-31 23:59:59

TIMESTAMP: 用于包含日期和时间部分的值。TIMESTAMP的范围是1970-01-01 00:00:01UTC到2038-01-19 03:14:07UTC。

TIME: 其值采用 HH:MM:SS 格式(或对于大小时数而言为 HHH:MM:SS
格式)。TIME值的范围可以从-838:59:59838:59:59。小时部分可能是如此之大,因为“时间”类型不仅可以用来表示一天中的某个时间(必须少于24小时),而且可以用来表示经过的时间或两个事件之间的时间间隔(可能远大于24小时,甚至是负面的)。

2020-05-17