我将名称列表存储在数据库中。该列表没有每个记录的任何主键。这些名称随后会被另一个程序使用,因此需要将主键用作外键。
该列表由第三方拥有,这超出了我们的影响范围,因此我们不能强迫他们提供主键。
我使用增量编号进行PK,但是最近发现新记录可以插入列表中的任何位置,因此增量方法将失败。不能使用哈希代码,因为不能保证它们是稳定的。
我是否可以通过任何方式为这些记录生成一个稳定的主键,然后可以使用名称或其他任何方法来追溯到列表中的名称?
例如
第一天的清单如下
假设963是Oliver的密钥(作为哈希码),并且该代码已由XYZ程序保存在其存储中,以供回溯到Oliver。
前几天,在中间添加了新名称“奥斯卡”
现在,Oliver的密钥是852,因为不能保证哈希码的稳定性,并且序列也受到干扰,因此XYZ程序无法使用密钥963引用Oliver。