【mysql】时间类型-如何根据不同的应用场景,选择合适的时间类型?

首先理解mysql时间存储类型,与使用场景

 

一些帮助理解的资料:

摘自:MySQL如何存储时间datetime还是timestamp

 

MySql中关于日期的类型有Date/Datetime/Timestamp三种类型

MySQL 的默认 DATE 字段格式是 YYYY-MM-DD。支持的范围是 1000-01-01 到 9999-12-31。

DATETIME 是一个结合日期和时间的类型,并保存数据为 YYYY-MM-DD HH:MM:SS 格式。它允许的范围从 1000-01-01 00:00:00 到 9999-12-31 23:59:59,并且允许使用字符串或数字进行分配值。

有了上面这些面mysql字段的了解,我决定选择可读性比较好的datetime类型

Datetime格式使用方法如下:

例如:

update sys_tables set crt_date = 12331212121212 where table_name = 'sys_dict';
update sys_tables set crt_date = '1233-12-12 12:12:12' where table_name = 'sys_dict_item';

image

 

参考文章:

MySQL中日期和时间类型

然后是实例:

设计表:

我通过 navicat设计 run_result表,这个表有2个字段是时间类型:start_time,end_time

用navicat工具配置datetime类型字段时,不需要指定长度,长度0就可以

 

插入1条记录看看:

datetime字段值如下,像字符串一样用 ''(英文单引号)括起来就可以了

insert into run_result values(1,1,'2019-10-09 09:59:02','2019-10-09 10:02:12','00时03分10秒',1341,1163,2,176);

存储效果: 

 

原文地址:https://www.cnblogs.com/kaerxifa/p/11640048.html