关于mysql5.5与mysql5.7版本timestamp使用差异

开发过程中之前使用的是5.7,目前一个项目是5.5,写代码时候没有发现问题,但是后来发现timestamp的时间字段参数是不一致的,遂查询总结,只总结了自己使用中的问题,其他问题欢迎大家一起总结

1、5.7版本的 timestamp类型 ,在表设计时多个字段为timestamp时,都可以使用CURRENT_TIMESTAMP作为默认值,而且都可以根据当前时间戳更新

2、而5.5-5.6.4版本中 ,在表设计时多个字段为timestamp时候,只能有一个CURRENT_TIMESTAMP作为默认值,而且要在第一个timestamp类型字段设置。如果当前的timestamp字段为非空的话默认是根据当时时间戳更新,所以此处要注意,如果你是update_time的话是可以的,如果你是create_time的话此字段为非空,那么默认根据当前时间戳更新,你以后每次修改数据都会导致创建时间变化,这是不允许的,所以此处要注意

 

 

还有就是能用高版本尽量用高版本,相对这些问题,会解决的比较好

你可能感兴趣的:(mysql5.7,linux)