为什么在MySQL中发生这种数据类型转换?

时间:2018-01-09 11:01:26

标签: php mysql type-conversion

我有一个存储网页性能统计信息的表,包括每个用户的请求开始和结束时间的时间戳。时间戳在数据库中保存为INT字段,但是作为字符串从前端发送到PHP,后者又为我做了一些幕后类型转换,并将每个时间戳转换为以下INT:

2147483647

现在,通过将原始输入转换为动态整数来解决问题,所以我的问题不是如何解决这个问题,而是为什么确实发生了这种确切的转换,为什么这是输出?这已经使用各种时间戳字符串进行了测试,但它们都返回了相同的输出:

1515153744264 -> 2147483647

那么亲爱的知识渊博的SQL向导人,这里发生了什么?

1 个答案:

答案 0 :(得分:2)

要保存该值,必须将string转换为intint的最大值为2147483647