逻辑删除与联合索引冲突处理(二)
发表于|更新于
|浏览量:
一星陨落,黯淡不了星空灿烂;一花凋零,荒芜不了整个春天。——巴尔扎克
之前写过一篇,用时间实现,今天提供另一种思路
我们的逻辑删除字段,如果和联合唯一索引同时使用,还可以使用下面这一种方式:
如果未删除,使用魔法值
如果已删除,使用NULL
因为mybatisPlus官方文档也提到了:
字段类型支持说明:
- 支持所有数据类型(推荐使用
Integer,Boolean,LocalDateTime)- 如果数据库字段使用
datetime,逻辑未删除值和已删除值支持配置为字符串null,另一个值支持配置为函数来获取值如now()
之前看源码,发现它也是使用替换字符串的方式去做,所以是支持NULL的
并且我们的null并不受唯一索引约束
那我们这里就可以直接使用如下配置:
1 | @TableLogic(delval = StringPool.NULL, value = "existed") |
效果:

删除时效果:

相关推荐
2021-10-05
Sa-Token
我相信过,如果怀着愉快的心情谈起悲伤的事情,悲伤就会烟消云散。——高尔基 介绍一个轻量级JWT权限认证框架Sa-Token 官方文档:https://sa-token.dev33.cn/doc/index.html#/ 今天直接试着用了下,感觉还不错,功能比之前的shaun强大 真香~
2021-07-23
java模块导出与导入
只有经历过地狱般的磨砺,才能练就创造天堂的力量;只有流过血的手指,才能弹出世间的绝响。——泰戈尔 在java9中,新增了模块导入导出功能 我们可以新建一个module-info.java文件 然后我们可以在其中定义模块名、导出模块、引入模块 例如我这里定义了模块名为simple.design 导出的包为com.ruben.vistor.example.insurance和com.ruben.vistor.example.check 导入的包为java.net.http以及java.sql 123456module simple.design { exports com.ruben.vistor.example.insurance; exports com.ruben.vistor.example.check; requires java.net.http; requires java.sql;} 我们在本模块中可以使用到java.net.http以及java.sql 当然我们导出的这两个包下面的类也可以在另一个模块中引用 需要...
2021-07-14
mybatis-plus动态表名
却是平流无石处,时时闻说有沉沦。——唐•杜荀鹤 配置 123456789101112131415161718@Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); DynamicTableNameInnerInterceptor dynamicTableNameInnerInterceptor = new DynamicTableNameInnerInterceptor(); HashMap<String, TableNameHandler> map = new HashMap<String, TableNameHandler>(2) {{ put("user", (sql, tableName) -> { St...
2022-07-25
科大讯飞NLP黑白名单上传
“你喜欢一个人,就像喜欢富士山。你可以看到它,但是不能搬走它。你有什么方法可以移动一座富士山呢?回答是,你自己走过去。爱情也是如此,逛过就已经足够。”——林夕 介绍:对接科大讯飞NLP 贴代码,其中一些常量在上面有: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758package org.example;import cn.hutool.core.codec.Base64;import cn.hutool.core.lang.Console;import cn.hutool.core.lang.Opt;import cn.hutool.core.map.MapUtil;import cn.hutool.core.text.CharSequenceUtil;import cn.hutool.http.HttpUtil;import cn.hutool.json.JSONObject;import cn.hutool...
2020-09-26
java简单爬虫
最好不要在夕阳西下的时候去幻想什么,而要在旭日初升的时候即投入工作。——谢觉哉 还在为壁纸发愁吗?今天手把手教你写爬虫! 注意!仅供学习交流使用,请勿用在歪门邪道的地方!技术只是工具!关键在于用途! 顺带一提,大家一定要注意不要违法了哦 12345第二百八十五条 违反国家规定,侵入国家事务、国防建设、尖端科学技术领域的计算机信息系统的,处三年以下有期徒刑或者拘役。二百八十六条 违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,后果严重的,处五年以下有期徒刑或者拘役;后果特别严重的,处五年以上有期徒刑。违反国家规定,对计算机信息系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,依照前款的规定处罚。故意制作、传播计算机病毒等破坏性程序,影响计算机系统正常运行,后果严重的,依照第一款的规定处罚。第二百八十七条 利用计算机实施金融诈骗、盗窃、贪污、挪用公款、窃取国家秘密或者其他犯罪的,依照本法有关规定定罪处罚。 如果爬虫程序采集到公民的姓名、身份证件号码、通信通讯联系方式、住址、账号密码、财产状况、行踪轨迹...
2022-07-21
对接科大讯飞NLP
“未知苦处,不信神佛。”——Priest《杀破狼》 这里对接的是文本纠错 git仓库: https://gitee.com/VampireAchao/simple-kdxf-nlp.git api文档: https://www.xfyun.cn/doc/nlp/textCorrection/API.html#%E6%8E%A5%E5%8F%A3%E8%AF%B4%E6%98%8E 引入maven依赖 12345<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.8.4</version></dependency> 然后在 resources目录下添加 app.setting配置文件(也可以用 spring配置文件或者硬编码,随便你) 编写配置文件 12345678910111213# --------------------------...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog