MySQL如何存储时间datetime还是timestamp

时间存储
时间存储是我们在MySQL中最常用的一种存储类型,MySQL为我们提供了timestamp和datetime两种数据类型,那么这两者有什么区别,又该如何进行选择呢
timestamp和datetime的区别
- datetime的默认值为null,timestamp默认值为当前系统时间
- datetime占用8个字节,timestamp占用4个字节
- datetime存的什么读出来就是什么,timestamp存储的时候会转为utc存储,读出的时候也会转换成当前时区
- timestamp所能存储的时间范围为:'1970-01-01 00:00:01.000000' 到 '2038-01-19 03:14:07.999999'。datetime所能存储的时间范围为:'1000-01-01 00:00:00.000000' 到 '9999-12-31 23:59:59.999999'。
如何选择
- 如果时间范围超过2038年,那自然选择datetime
- 如果希望跨时区存储不同地区时间,也选择datetime
- timestamp适合用于记录字段最后更新时间(老版本mysql,新版本datetime也可以支持)
相关推荐
-
MySQL 安装失败,提示Apply Security Settings 的处理办法
MySQL 安装失败,提示Apply Security Settings 的处理办法2025-04-20 01:54:57 -
MySQL事务隔离级别详解2025-04-20 01:44:01
-
一文说清nginx规则匹配(含案例分析)2025-04-20 01:10:02
-
运维服务篇:Nginx常用功能(rewrite重定向/location定位等)
运维服务篇:Nginx常用功能(rewrite重定向/location定位等)2025-04-20 00:55:25 -
php定义变量规则不能包含哪些字符?2025-04-20 00:27:24