前言
最近在项目中出现了更新数据库偶尔更新丢失的情况,表现为SQL执行成功,没有任何报错,在同一事务中查询保存后的记录,没有任何问题,然而查看数据库记录却没有更新。重点是这种情况并不是稳定发生的,有时能够更新成功,又是却会更新丢失。
最近在项目中出现了更新数据库偶尔更新丢失的情况,表现为SQL执行成功,没有任何报错,在同一事务中查询保存后的记录,没有任何问题,然而查看数据库记录却没有更新。重点是这种情况并不是稳定发生的,有时能够更新成功,又是却会更新丢失。
解决Java MySQL驱动中MySQL时区与JVM时区的转换问题
在MySQL中,当使用timestamp
作为储存时间的类型时,其读写都与session
的time_zone
有关。当没有显式指定时,当前session的time_zone
会继承全局设置
time_zone
转换成UTC时间,将其时间戳进行储存time_zone
所对应的时间根据其他资料在连接字符串中添加参数serverTimezone