【发布时间】:2016-03-01 06:53:15
【问题描述】:
我不确定标题是否描述了我的问题, 我的表 A 需要对每条记录使用唯一键,如下所示:
1.它从一个名为 counters 的表中获取密钥(假设它是 500)。 2.检查表A中最后一个值是否真的被使用(这是因为有人可能会预订该值然后没有完成使用它),(如果使用增加值,否则取它)
在业务方面,该过程通过 2 个步骤完成: 1.client点击book id,这样他/她就有了钥匙。 2.client填写其余信息并保存,这样就在A表中插入了一个新行。
可能有多个客户同时使用系统,所以他们中的两个可能会预订相同的价值
假设 user1 book 500,然后 user2 book 500(user1 还没有使用它,所以 user2 将使用相同的 key),然后 user1 在 table A 中插入行,然后 user2 在 tableA 中插入行
这种情况会导致严重的问题,因为两者都使用相同的密钥,应该是唯一的
你能建议一个解决方案吗
【问题讨论】:
标签: database concurrency insert key unique