Numeric value out of range: 1264 Out of range value for column 'end_time' at row 1
在window上做开发,代码上传到linux做测试,数据插入提示错误,错误字段为时间字段数据库存int(10)时间戳,查到解决方案大多是修改mysql配置,求教php程序该怎么避免此错误
Numeric value out of range: 1264 Out of range value for column 'end_time' at row 1
在window上做开发,代码上传到linux做测试,数据插入提示错误,错误字段为时间字段数据库存int(10)时间戳,查到解决方案大多是修改mysql配置,求教php程序该怎么避免此错误
你的数太大了,数据库存字段存不下,和你程序没什么关系。
如果强行要这么做的话,也不是不行,你把时间戳减掉一个大数,比如1500000000,得到的数到时足够小了,取出来你再加上去。但是这么做着实蠢了一点。
一般来说存储时间戳使用 类型int(10)是足够的,你是不是没将这个类型定义为无符号类型?
`end_time` int(10) unsigned
无符号比有符号可是大了一倍哇,不可能不够用的
5 回答3.3k 阅读✓ 已解决
3 回答3.7k 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
5 回答1.4k 阅读
原因是转时间的时候出现时间错误2099年,直接超过int最大值,想想还是放弃int改为bigint存储才是长久之计