前几天做一个后盾治理的我的项目,发现前端拿到的工夫戳值是对的,然而存入数据库之后却始终存储的是 2147483647,通过 new Date()
解析之后是 Mon Jan 26 1970 04:31:23 GMT+0800 (中国规范工夫)
,真是百思不得其解,前端用的是element-ui
的dateTimePicker
获取的日期和工夫。
起初通过多方排查之后,确定以及必定前端没有问题,nodejs 搭建的服务端也没问题,问题就出在了 mysql 数据库
。起初我留神到了 长度 / 值
这个属性,最开始我设置字段类型是 INT
,给了 50 的长度(其实始终最长就是 11,尽管显示的 50),然而起初我想将其批改的更长时发现,始终只能放弃在 11 的长度值(对于数据库并不精通的我只晓得我申请数据须要数字类型)。
起初到网上一查发现了始终显示 2147483647 的起因,其实就是长度的问题,2147483647 就是 INT
的最大贮存长度(可能说的有误,对数据库不够业余)。于是我就将字段类型改为了 Varchar
,前端申请到数据时将字符串类型的数据转换成了数字类型。
最终得以解决,通过这次问题又学到一个知识点,就很棒!