Mysql 读取数据绑定到逻辑唯一性字段,导致重复数据产生问题。

2017-09-12 11:54:01 +08:00
 Anlim

业务逻辑:

1、创建数据,逻辑唯一性字段默认为空。 2、查询 Mysql,从数据表中取出其中一条记录,并绑定到逻辑唯一性字段。 3、将取出的记录标示为已使用。

bug:

因为逻辑唯一性字段没有 UNIQUE 标示,也没有在代码逻辑中检测。导致数据出现重复。

问题:

如果添加检查机制,该如何进行?确保绑定数据到逻辑唯一性字段是唯一的。谢谢!!

3065 次点击
所在节点    MySQL
6 条回复
dangyuluo
2017-09-12 12:02:36 +08:00
可能我技术不精吧,居然没有读懂楼主的问题。不好意思。
Anlim
2017-09-12 12:04:39 +08:00
@dangyuluo 其实就是数据表中的某一个字段绑定数据的时候需要做到唯一性。
LeeSeoung
2017-09-12 15:11:37 +08:00
- -有主键这种东西么
cevincheung
2017-09-12 15:38:35 +08:00
事物+锁?
Anlim
2017-09-12 16:14:37 +08:00
@LeeSeoung 这个字段没有设置为主键
Anlim
2017-09-12 16:15:50 +08:00
@cevincheung 这种方式是靠谱的,但是现在不太想使用锁。想通过数据检查的方式实现。已经找到些思路。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/390013

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX