mbatis-plus的逻辑删除功能,可以通过注解个性化的配置某一张表或几张表开启逻辑删除功能(方式1),也可以通过配置文件,全局配置逻辑删除功能(方式2);根据情况,选择一种方式即可; 注解方式 在标识逻辑删除的字段上添加注解@TableLogic(value = "1",delval = "0")即可; 全局配置方式 mybatis-plus: global-config: d...
作为Comate,一个智能编程助手,很高兴为你解释MyBatis-Plus中逻辑删除的原理。 1. 什么是逻辑删除? 逻辑删除是一种软删除机制,它并不真正从数据库中删除数据行,而是通过修改某个字段(通常是标记为“已删除”的字段)来表明该数据行已被“删除”。这种方式允许数据在需要时可以恢复,同时也保留了数据的完整性和历史记...
而是多采用逻辑删除的方式,即不会真正在删除库删除数据,而是使用一个字段来标识它已经被删除。 如使用 isDeleted 字段标识该条记录是否已经被删除,0代表未删除,1代表已删除。此时对数据库做增删改查的SQL语句会发生如下变化: • 插入:没有变化; • 删除:转变为修改操作,即修改字段 isDeleted 为1; • 修改...
mybatis-plus:global-config:db-config:logic-delete-value:'NULL'#删除对应的值logic-not-delete-value:1#未删除对应的值 当我们通过delete*方法删除数据的时候,会将isDelete属性给为配置的两种值。 不仅如此到我们用BaseMapper的查询方法会自动添加isDelete属性。 通用枚举 之前学习过就不多说了,连接在...
一、逻辑删除 1.逻辑删除后,将不会被查询出来。 mybatis-plus:global-config:db-config:logic-not-delete-value:0logic-delete-value:1@TableLogic@TableField(select=false)// 查询时不显示此字段privateIntegerisDel;@AutowiredprivateUserMapperuserMapper;/*** 逻辑删除*/@Testpublicvoiddelete01(){inti=userMapp...
原理浅析逻辑删除sql模板 以deleteById方法为例,分析其逻辑。使用mp(mabatis-plus简称)时,无需在xml中编写sql,因为mp在程序启动时已动态生成了常用增删改查方法的sql。这些方法对应着抽象类AbstractMethod的一个具体子类,而子类核心逻辑是将sql模板中的%s按实体类信息填充,拼装成完整的sql语句。图中...
逻辑删除(软删除):逻辑删除就是对要被删除的数据打上一个删除标记,通常使用一个deleted字段标示行记录是不是被删除,比如该数据有一个字段deleted,当其值为0表示未删除,值为1表示删除。那么逻辑删除就是将0变成1。在逻辑上是数据是被删除的,但数据本身是依然存在的。两者的优劣:物理删除一定程度上删除了“...
在Mybatis-Plus中,逻辑删除是一种常用的删除方式,它通过修改数据的状态而不是真正地从数据库中删除数据来实现删除操作。这种删除方式对于需要保留历史记录或不允许彻底删除的数据非常有用。然而,在使用逻辑删除时,可能会遇到一些问题。以下是一些常见的问题及其解决方案: 更新状态时出现异常:当尝试更新数据状态以实现逻辑...