关于MySQL中datetime和timestamp的区别解析
关于MySQL中datetime和timestamp的区别
MySQL 中常用的两种时间储存类型分别是datetime和 timestamp。如何在它们之间选择是建表时必要的考虑。
在MySQL中一些日期字段的类型选择为datetime和timestamp,那么对于这两种类型不同的应用场景是什么呢
1 MySQL的日期类型简介
| 类型名称 | 格式 | 范围 | 存储需要 |
|---|---|---|---|
| YEAR | YYYY | 1901-2155 | 1字节 |
| TIME | HH:MM:SS | -838:59:59到838:59:59 | 3字节 |
| DATE | YYYY-MM-DD | 1000-01-01到9999-12-3 | 3字节 |
| DATETIME | YYYY-MM-DD HH:MM:SS | 1000-01-01 00:00:00到9999-12-31 23:59:59 | 8字节 |
| TIMESTAMP | YYYY-MM-DD HH:MM:SS | 1970-01-01 00:00:01 UTC到2038-01-19 03:14:07 UTC | 4字节 |
上述日期类型,使用较多的是DATE和DATETIME,TIMESTAMP,因在某些场景下,需要记录时间的具体的时分秒.所以,需要从DATETIME和TIMESTAMP中选择. 而这两者又有什么相同点和异同点.
2 datetime和timestamp的区别
相同点:
- 存储格式相同 datetime和timestamp两者的时间格式都是YYYY-MM-DD HH:MM:SS
不同点:
- 存储范围不同. datetime的范围是1000-01-01到9999-12-31. 而timestamp是从1970-01-01到2038-01-19, 即后者的时间范围很小.
- 与时区关系. datetime是存储服务器当前的时区. 而timestamp类型,是将服务器当前时间转换为UTC(世界时间)来存储.即datetime与时区无关,存什么,返回什么. 而timestamp存储的时间,返回的时间会随着数据库的时区不同而发生改变.
3 总结
关于datetime和timestamp的选择使用.
- 1 在满足使用条件的情况下,占据存储空间越少越好,此时选择timestamp比datetime更好.
- 2 timestamp类型的存储,是以UTC时区来保存的,在显示时会自动将日期数据转换,如果时间的场景对应多个时区,此时选择timestamp比datetime更好.
- 3 关于日期的使用范围, timestamp类型最大只支持到2038-01-19年,所以如果使用的日期时间较大, 则选择datetime比timestamp更好.
根据上述的总结可知,在日常的项目使用中,优先推荐使用timestamp类型,花更少的存储空间实现时间的存储.
到此这篇关于关于MySQL中datetime和timestamp的区别的文章就介绍到这了,更多相关mysql datetime和timestamp的区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- Mysql中的Datetime和Timestamp比较
- MySQL 中 datetime 和 timestamp 的区别与选择
- MySQL中datetime和timestamp的区别及使用详解
- Mysql数据库中datetime、bigint、timestamp来表示时间选择,谁来存储时间效率最高
- MySQL之DATETIME与TIMESTAMP的时间精度问题
- 浅谈Mysql时间的存储 datetime还是时间戳timestamp
- MySQL日期ATE、TIME、DATETIME、TIMESTAMP和YEAR的使用语句
- Mysql中有关Datetime和Timestamp的使用总结
- MySQL 中 DATE / DATETIME / TIMESTAMP 的区别小结
相关文章
深入浅析MySQL 中 Identifier Case Sensitivity问题
这篇文章主要介绍了MySQL 中 Identifier Case Sensitivity,需要的朋友可以参考下2018-09-09
MySQL 存储过程传参数实现where id in(1,2,3,...)示例
一个MySQL 存储过程传参数的问题想实现例如筛选条件为:where id in(1,2,3,...),下面有个不错的示例,感兴趣的朋友可以参考下2013-10-10
mysql 5.7安装 MySQL 服务无法启动但是服务没有报告任何错误
这篇文章主要介绍了mysql 5.7安装 MySQL 服务无法启动但是服务没有报告任何错误的相关资料,需要的朋友可以参考下2017-04-04


最新评论