2022年1月5号 on update CURRENT_TIMESTAMP无效情况记录

原以为只要是更新就会触发事件更新。

 

但还是太天真了。

 

当update 的set字段中包含了本字段的时候并不会触发,或者应该说会以updae set中的值为准。。。。。

 

场景大概是SSM项目中,设置了一个mysql字段中的公用字段update_time当更新的时候自动修改为当前时间,结果发现没有变?

 

排查了一下发现是因为updateById(mybatis plus)的这个方法会带入update_time的值,会以这个值为准。。。。。

 

于是只能

1、不要把这个字段映射到Java类

2、通过TableField(update="now()")

3、通过字段填充

4、手动设置

posted @ 2022-01-05 10:12  gabin  阅读(1450)  评论(0编辑  收藏  举报