sql - 即使从表中归档历史数据,也保持列值的唯一性
问题描述
背景信息:我在一家公司工作,我们有一个表格,其中特定列“标识符”的值应该始终是唯一的。当我们在表中插入一条新记录时,我们总是检查我们要在“标识符”列中插入的值不应该与表中已经存在的任何其他记录匹配,如果它与任何记录匹配,那么我们尝试为“标识符”生成另一个值以保持唯一性。到目前为止还没有存档机制,因此该表有大量数据导致延迟问题,因此我们希望存档将进入单独数据库的历史数据。
关于问题:如果我们归档表中的记录,那么我们有可能创建一个已归档的“标识符”值,并且我们当前维护唯一性的逻辑也将失败,因此我们将有“标识符”的重复值(一个在存档数据中,一个在实际表中)。
我正在寻找解决方案,即使旧数据存档在另一个数据库中,我们仍然可以保持“标识符”列值的唯一性。
有人可以建议任何可用于解决此问题的方法吗?
解决方案
推荐阅读
- ios - 使用使用旧版 SDK 构建的 iOS 静态库
- javascript - 我们如何从对象数组中删除重复的子值
- inheritance - 使用 Guava CacheBulilder() 构建扩展的 AbstractCache() 对象
- c - 如何避免C中文件名中的“\”问题?
- angular - Angular dategangepicker 多个按钮
- android - DownloadManager 下载 2 个文件而不是 1 个
- graphql - Apollo 服务器数据源定义生成错误
- c# - 从字典中获取最近的可用值
- pdfbox - 在 PDFBOX 中围绕字符绘制边界框
- typescript - 未捕获(承诺):错误:无法匹配任何路由。URL 段:“类别/登录”