扫码关注官方订阅号
之前在项目中数据表的时间字段用的都是 int(10)今天早上看书时,书上说建议使用 TIMESTAMP 类型,大家在项目都是怎么存储的?
int(10)
TIMESTAMP
光阴似箭催人老,日月如移越少年。
datetime 和 int 应该都精确不到毫秒上去,timestamp 和 bigint 可以
int占用4个字节,而4个字节就是32位,不够32位前面补0,所以MySQL中unsigned int(10)最大能存储的整数是2^32-1,即4294967295.echo date('Y-m-d H:i:s', 4294967295); 返回 2106-02-07 14:28:15 ,也就是int(10)字段无法存储这个时间后的时间戳.个人觉得可以用8个字节的bigint,保证能够存储地球有生之年的时间戳.
echo date('Y-m-d H:i:s', 4294967295);
我们用的 datetime, 缺点是没有毫秒, 需要记录毫秒的用的字符型存的
datetime
个人更喜欢int存时间戳....具体孰好孰坏还请楼下的盆友来回答...
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
datetime 和 int 应该都精确不到毫秒上去,timestamp 和 bigint 可以
int占用4个字节,而4个字节就是32位,不够32位前面补0,所以MySQL中unsigned int(10)最大能存储的整数是2^32-1,即4294967295.
echo date('Y-m-d H:i:s', 4294967295);返回 2106-02-07 14:28:15 ,也就是int(10)字段无法存储这个时间后的时间戳.个人觉得可以用8个字节的bigint,保证能够存储地球有生之年的时间戳.我们用的
datetime, 缺点是没有毫秒, 需要记录毫秒的用的字符型存的个人更喜欢int存时间戳....具体孰好孰坏还请楼下的盆友来回答...