MySQL如何防止一条数据被重复利用?
背景介绍:
二张表,一张存有所有现在可以用的MAC地址(Rawdata),一张表存使用后的记录(Bind),MAC地址只能用在一台产品上,如何在多个客户端查询Rawdata表取到一个MAC,
这条记录就不能给其它客户端使用了呢?请各位大虾给一下思路,谢谢了!~~
现在有两张表
表1:Rawdata --存入了N条MAC数据,MAC只能给一个产品用,
RID pk
MAC
status
表2:Bind --操作成功后写入这张表做记录
SN PK
RID FK
Rawdata表中我会预先录入数据,其Status如果为0,表示该条记录没有使用过
现在 我有一个SN,需要到Rawdata表中申请一条记录,该记录的Status必须为0,
使用完成后,我在Bind表中插入SN,RID,然后将Rawdata表中该条记录的Status标识为1,表示已经使用了
现在的问题:
如果有多个用户同时进行查询,那么会出现一条数据使用还没来得及将status从0更新为1,又被另外一条查询给查询到了,如何实现一条MAC记录不会被重复查询出来?