MySQL数据库日期类型推荐与比较

在开发中,我们经常需要把日期存储在数据库中,今天我们说一下数据库中日期类型。

1.首先时间日期类型建议使用date储存
在开发中,有部分人会使用字符串的格式来存储时间日期,但从其数据类型大小来看,date所占用的字节数要少于varchar类型,并且对于一些需要使用操作时间日期的函数是无法使用的。对于日期参数使用date类型,或者需要时间日期,则使用Datetime。

2.DateTime和Timestamp的区别
两者都可表示YYYY-MM-DD HH:MM:SS类型的时间。但两者之间还是有区别的。
区别一:
DateTime类型负责保存当前会话设置的时区所对应的时间,一旦所存储数据的数据库修改了时区,读取出来的参数时不正确的。
而Timestamp储存日期后,每次访问时会按照当前数据库的时区进行相关的计算。因此,针对与不同的时区读取出来的值是不同的。
区别二:
DateTime使用8个字节存储数据,并以实际格式为数据储存格式,其数据存储范围是1000-01-01 00:00:00 ~ 9999-12-31 23:59:59。
Timestamp使用4个字节存储数据,并以UTC(Universal Time Coordinated,协调世界时)为数据储存格式,其数据存储范围是1970-01-01 00:00:01 ~ 2037-12-31 23:59:59。
从存储数据的范围可以看出DateTime能够表示的时间范围更大。

猜你喜欢

转载自blog.csdn.net/leaning_java/article/details/126548201