存在逻辑删除的表字段上建立唯一索引的巧办法 (逻辑删除与唯一索引)

简介: 设计数据库唯一索引时,经常会碰到唯一删除的键值,导致很难处理,这里就简单介绍一种巧办法,帮你快速解决该问题

存在逻辑删除的表字段上建立唯一索引的巧办法

首先,我们肯定是清楚地知道唯一键值+逻辑删除位如果联合创建唯一索引的话,只能最多存在两条数据,无法满足不断删除新增的需求,所以需要一个巧妙的办法去实现有逻辑删除标志位的唯一索引方式

既然有逻辑删除的存在,我们其实可以通过额外增加一个字段,叫做逻辑主键,当创建新记录的时候,该键值保存为0,当删除该行记录时,则回填该行的主键,这样子我们会发现每次该记录 唯一键值+逻辑主键 都是不重复的,所以咱们就可以将该键值和唯一键值作为唯一索引

1643102184037_AD8E66DD-5131-48e5-B1E3-EDCAC8F91CEA.png

相关文章
|
JSON JavaScript 前端开发
解决js中Long类型数据在请求与响应过程精度丢失问题(springboot项目中)
解决js中Long类型数据在请求与响应过程精度丢失问题(springboot项目中)
2886 0
|
5月前
|
存储 监控 Apache
写入快 2 倍,查询快 6 倍,存储成本反降 50%:丰巢日志平台从 ELK 升级为 Apache Doris
丰巢日志平台从 ELK 升级至 Apache Doris,旨在构建统一、高效的可观测性底座。新架构解决了原系统在写入、存储和查询上的瓶颈:存储成本降低 50%,写入性能提升 2 倍,查询速度提升 6 倍。为未来统一可观测性平台的建设奠定了技术基础
558 1
写入快 2 倍,查询快 6 倍,存储成本反降 50%:丰巢日志平台从 ELK 升级为 Apache Doris
|
数据库
如何解决逻辑删除is_del与数据库唯一约束冲突
如何解决逻辑删除is_del与数据库唯一约束冲突
792 0
|
机器学习/深度学习 XML Java
【spring boot logback】日志logback格式解析
在 Spring Boot 中,Logback 是默认的日志框架,它支持灵活的日志格式配置。通过配置 logback.xml 文件,可以定义日志的输出格式、日志级别、日志文件路径等。
2124 5
|
Java 测试技术 Maven
Maven打包使用多线程加速构建过程
Maven打包使用多线程加速构建过程
3646 0
|
NoSQL Java Redis
springboot怎么使用Redisson
通过以上步骤,已经详细介绍了如何在Spring Boot项目中使用Redisson,包括添加依赖、配置Redisson、创建配置类以及使用Redisson实现分布式锁和分布式集合。Redisson提供了丰富的分布式数据结构和工具,可以帮助开发者更高效地实现分布式系统。通过合理使用这些工具,可以显著提高系统的性能和可靠性。
4505 34
|
存储 对象存储
【阿里云OSS】You have no right to access this object because of bucket acl.
【阿里云OSS】You have no right to access this object because of bucket acl.
22340 1
【阿里云OSS】You have no right to access this object because of bucket acl.
|
存储 缓存 Java
Spring缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】使用及注意事项
Spring缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】使用及注意事项
5595 2

热门文章

最新文章