我的问题(以后写代码的时候注意一下):
1.创建表的时候0或者1是自动添加的吗
2.我要删除这条数据的时候就是把删除标记改为1的时候 我需要设置这个删除标记为1吗,
还是deletebyId这个删除标记就自动变为1了
加在entity中的字段上面
@TableLogic(value="0",delval="1")
//value = 未删除的值,默认值为0 delval = “删除后的值,默认值为1” 值被删除了就是1
当你用sql或者是mybatis查询的时候 系统会在sql后面自动拼接
查询时,没有拼删除标识位的条件,但是sql还是自动加上了where delete =0
2、增加注解后调用BaseMapper的deleteById(id)或者IService的removeById(id),是逻辑删除。如果没有增加该注解,是真删除。
数据库逻辑删除操作详解
在数据库中,使用@TableLogic注解可以实现逻辑删除,而非物理删除。当创建表时,通常会自动添加一个表示删除状态的字段,初始值为0。删除数据时,不是真正删除,而是将删除标记设为1。调用deleteById或removeById时,若包含@TableLogic注解,执行的是逻辑删除,否则是物理删除。查询时,系统会自动过滤掉删除标记为1的记录。
1438

被折叠的 条评论
为什么被折叠?



