0
点赞
收藏
分享

微信扫一扫

MyBatisPlus中开启了逻辑删除则更新逻辑字段不再管用


场景

MyBatisPlus中全局Sql注入器应用_逻辑删除使用MyBatisPlus中全局Sql注入器应用_逻辑删除使用:

这里使用isDelete作为逻辑删除的字段。

在业务中需要进行对isDelete这个字段进行更新。

实现

断点查看,更改之前为false

MyBatisPlus中开启了逻辑删除则更新逻辑字段不再管用_mybatiPlus逻辑删除

对其进行赋值,设置为true

MyBatisPlus中开启了逻辑删除则更新逻辑字段不再管用_大数据_02

使用update进行更新,却不起作用并没有进行更新。

MyBatisPlus中开启了逻辑删除则更新逻辑字段不再管用_赋值_03

实际执行的sql语句为:

UPDATE sys_enterprise_org
SET pid = 6,
num = 'cj003',
text = '正极车间',
icon = 'fa fa-sitemap',
org_classify = 4,
opened = 1,
disabled = 0,
selected = 0,
sort_num = 1,
gmt_creat = '2018-12-20 22:25:02.0',
gmt_modified = '2019-06-06 09:38:16.723',
creator = 1,
modifier = 1,
remark = '大数据部经理',
is_top_level = 0
WHERE
id = 9
AND is_delete = 0;

总结

1.MP配置了逻辑删除后,执行delete相关方法后会实际执行update方法,将逻辑删除的字段进行更改。

2.但是如果想使用update相关方法将此逻辑字段进行更新则是不可以的。

3.逻辑删除是为了方便数据恢复和保护数据本身价值的一种方案,但是实际意义也是删除,如果想再将其恢复则不应该使用逻辑删除。

举报

相关推荐

0 条评论