爱生活,爱分享


Mybatis-Plus 更新字段为null的方式,看这篇就够了!!!

haiten 2021-03-04 753浏览 0条评论
首页/正文
分享到: / / / /

1.使用注解

注意: 3.1.2版本之前 是strategy注解 个人感觉有些危险, (多人开发或者时间久了 可能会遗忘该注解 出现不必要的错误)

使用注解推荐升级到3.1.2以上每种操作方式单独定义 不想升级mp版本请看第二/第三条方式

// 修改时忽略null 和空值
@TableField(strategy = FieldStrategy.IGNORED)
private BigDecimal discountPrice;

同时注解TanleField的strategy属性还有三个值:

3.1.2版本后的改动:

前几天改若依框架的时候发现没有 strategy 属性了,就打开源码看了下,在3.1.2版本后 strategy 更新为了以下三个:

2.

还有一种情形:

有些业务需要该字段为null的情况下更新为null 有些情况则在为null的情况下不进行更新 可以使用

updateByPrimaryKey(全字段更新)和updateByPrimaryKeySelective(不为空字段更新)

Mybatis-Plus开发人员解释链接:https://github.com/baomidou/mybatis-plus/issues/300

3.

MybatisPlus3.0已经更新了 修改构造器(UpdateWrapper)

可以使用该构造器的set()方法将字段更新为Null

set(String column, Object val)
 
// 将Id为1的用户名更新为null
userUpdateWrapper.eq("id",1);
userUpdateWrapper.set("userName",null);
userService.update(userUpdateWrapper);

版权声明:本文为CSDN博主「墨落青衫」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_42059737/article/details/87911469

转载仅为方便学习查看,一切权利属于原作者,本人只是做了整理和排版,如果带来不便请联系我删除。

最后修改:2021-03-04 07:06:30 © 著作权归作者所有
如果觉得我的文章对你有用,请随意赞赏
扫一扫支付

上一篇

发表评论

说点什么吧~

评论列表

还没有人评论哦~赶快抢占沙发吧~