首页 > 其他分享 >MybatisPlus逻辑删除

MybatisPlus逻辑删除

时间:2024-06-17 16:58:04浏览次数:20  
标签:逻辑 MybatisPlus 删除 deleted 查询 数据

逻辑删除就是基于代码逻辑模拟删除效果,但并不会真正删除数据。思路如下:

1.在表中添加一个字段标记数据是否被删除

2.当删除数据时把标记置为1

3.查询时只查询标记为0的数据

 例如逻辑删除字段为deleted,那么删除操作的sql语句为:

UPDATE user SET deleted = 1 WHERE id = 1 AND deleted = 0

对应的查询操作的语句也会进行相应的更改:

SELECT * FROM user WHERE deleted = 0

这样才能保证查到的数据是未删除的数据。

MybatisPlus提供了逻辑删除功能,无需改变方法调用的方式,而是在底层帮我们自动修改CRUD的语句。我们要做的就是在application.yaml文件中配置逻辑删除的字段名称和值即可:

      logical-delete-field: deleted #逻辑删除字段
      logical-delete-value: 1 #逻辑已删除值(默认为1)
      logical-not-delete-value: 0 #逻辑未删除值(默认为0)

这样MybatisPlus就可以自动帮我们实现,不需要我们人为操作。

但是逻辑删除本身也有自己的问题,比如:

会导致数据库表垃圾数据越来越多,影响查询效率

SQL中全都需要对逻辑删除字段做判断,影响查询效率

因此,我不太推荐采用逻辑删除功能,如果数据不能删除,可以采用把数据迁移到其他表的方法。

标签:逻辑,MybatisPlus,删除,deleted,查询,数据
From: https://blog.csdn.net/qq_50684356/article/details/139723092

相关文章

  • EasyRecovery数据恢复软件电脑的超级救星,无论是误删除的文件、格式化的硬盘还是病毒攻
    EasyRecovery数据恢复软件,是我近期用过最神奇的产品之一了!它就像是电脑的超级救星,无论是误删除的文件、格式化的硬盘还是病毒攻击,都能轻松搞定!让我给大家详细介绍一下这个神器吧!EasyRecovery数据恢复软件的功能真的是非常强大!它可以扫描并恢复各种类型的文件,包括照片、视频、......
  • 绘制MySQL数据库的实体关系图(ERD)与逻辑模型图
    绘制MySQL的实体关系图(ERD,Entity-RelationshipDiagram)和数据库模型图对于理解和设计数据库结构非常重要。这些图表有助于可视化数据库中的表、列、关系以及约束。以下是一些步骤和工具,你可以使用它们来创建这些图表。步骤确定实体:首先,确定你的数据库中的实体(或称为表......
  • 在Linux中,如何删除/a/b下的所有文件及目录?
    在Linux中,删除一个目录及其所有子文件和子目录是一个需要小心操作的过程,因为一旦执行,你将无法恢复被删除的数据。以下是几种删除/a/b下所有文件和目录的方法:使用rm命令:删除/a/b目录及其所有内容的最简单方法是使用rm命令的-r(递归)选项:rm-rf/a/b/*这里-rf选项组合表示:-r......
  • 购物卡Impl实现逻辑
    /***添加购物车**@paramshoppingCartDTO*/publicvoidaddShoppingCart(ShoppingCartDTOshoppingCartDTO){ShoppingCartshoppingCart=newShoppingCart();BeanUtils.copyProperties(shoppingCartDTO,shoppingCart);......
  • 删除多个文件名中相同的指定字段
    删除多个文件名中相同的指定字段删除"HC1201150"字段:importosdefdelete_files_with_string(directory,substring):forroot,_,filesinos.walk(directory):forfileinfiles:ifsubstringinfile:full_path=os.path.......
  • 学习C语言两个月后的收获(篇目三) #算术操作符 #强制类型转换 #关系操作符 #条件操作符
    一.算术操作符1.双目操作符:+、-、*、/、%注:双目操作符,顾名思义就是有两个操作数的操作符a./:除号。分为整数的除法和小数的除法整数的除法:'/'两边的操作数是整除故而进行整数的除法。整数的除法取值规则:不管余数是多少,不会四舍五入,直接舍弃余数部分而得到......
  • visible_windows生成逻辑和解析
    visible_windows生成逻辑和解析visible_windows生成逻辑在开发者选项中生成错误报告或命令行使用dumpstate,会生成一个bugreprot的压缩包,如其中包含了一些dump信息,其中海有个压缩包里面包含了一些可见窗口的控件信息,但用notepad打开却多是乱码之前工作遇到过一个显示问题只有截图、......
  • 代码随想录算法训练营第五十九天 | 115.不同的子序列、583. 两个字符串的删除操作、72
    115.不同的子序列题目链接:代码随想录视频讲解:动态规划之子序列,为了编辑距离做铺垫|LeetCode:115.不同的子序列_哔哩哔哩_bilibili解题思路1.dp[i][j]  为在s的前i个元素(即s[0,i-1])(以i-1结尾)中,有多少个t[0,j-1]匹配(以t[j -1]为结尾)2.递推公式//如果......
  • 【批量删除指定后缀的文件】
    文章目录前言一、工具二、代码总结Anaconda安装包前言前段时间在用Python处理遥感影像数据时遇到了一个小问题,同一文件夹下存在一些其他格式的文件(如.over.tif,但是我要处理的是.tif格式的文件),这个可能是在用arcgis操作时生成的,但是如果不管它的话,在用Python代码处理......
  • U盘文件删除恢复
    U盘里的文件被删该怎么恢复?随着数字化时代的飞速发展,U盘已经成为我们日常存储和传输数据的重要工具。然而,在使用U盘的过程中,不小心删除文件的情况时有发生。面对这种突发状况,许多可能会感到焦虑和无助。不过好在,只要及时地采取恢复措施,想要去解决问题还是蛮轻松的。一、尝试免......