mysql 中,创建表时如何定义一个日期类型的字段

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 中,创建表时如何定义一个日期类型的字段相关的知识,希望对你有一定的参考价值。

mysql中经常用来存储日期的数据类型有三种:Date、Datetime、Timestamp。

Date数据类型:用来存储没有时间的日期。Mysql获取和显示这个类型的格式为“YYYY-MM-DD”。支持的时间范围为“1000-00-00”到“9999-12-31”。

Datetime类型:存储既有日期又有时间的数据。存储和显示的格式为 “YYYY-MM-DD HH:MM:SS”。支持的时间范围是“1000-00-00 00:00:00”到“9999-12-31 23:59:59”。

Timestamp类型:也是存储既有日期又有时间的数据。存储和显示的格式跟Datetime一样。支持的时间范围是“1970-01-01 00:00:01”到“2038-01-19 03:14:07”。

所有不符合上面所述格式的数据都会被转换为相应类型的0值。(0000-00-00或者0000-00-00 00:00:00)
参考技术A 您好,如下是MySql中与时间相关的字段类型。
datetime 8 bytes YYYY-MM-DD HH:MM:SS 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
timestamp 4 bytes YYYY-MM-DD HH:MM:SS 1970-01-01 00:00:01 ~ 2038
date 3 bytes YYYY-MM-DD 1000-01-01 ~ 9999-12-31
year 1 bytes YYYY 1901 ~ 2155
我个人会经常使用datetime
参考技术B DATA格式的日期:YYYY-MM-DD
DATATIME格式的日期和时间:YYYY-MM-DD hh:mm:ss
TIMESTAMP格式的日期和时间:YYYYMMDDHHMMSS追问

这些我都知道,我说的是比如:create table s1(id char(20),log_time datetime ?、、、、
将log_time 这个字段定义为datetime类型的,那么长度什么的怎么表示,还是说定义该字段时的语句直接1 create table s1(id char(20),log_time datetime)这样就可以了。
还是这样写:
2 create table s1(id char(20),log_time datetime('yyyy-mm-dd hh24:mi:ss'));
1和2哪个表示方法正确?

参考技术C DATETIME即可本回答被提问者采纳 参考技术D 你用查询写,还是可视化界面写?

以上是关于mysql 中,创建表时如何定义一个日期类型的字段的主要内容,如果未能解决你的问题,请参考以下文章

mysql怎么在创建表时设置默认时间为系统时间

DDL数据语言|库表管理(MySQL)

DDL数据语言|库表管理(MySQL)

DDL数据语言|库表管理(MySQL)

MySQL学习笔记DDL语言(数据定义语言)

MySQL创建表时,设置时间字段自动插入当前时间的两种格式