我有一个如下的mysql表;
*客户表:
IDcustomer、cname、cadress、readedToProcess、.....*
为了执行一个关键进程,有 400 个客户端/PC 正在这个表上工作。每个客户端/电脑正在读取下一个尚未处理的客户。并执行该过程......每个客户不得被阅读(处理)超过一次。这个非常重要。
该表有大约 100 万条记录。每秒几乎有 1 次读取/处理。为此,我正在使用 readToProcess 字段。当我读取客户记录时,我立即将 readedToProcess 更新为 1... 在读取下一条记录时,我首先检查 readedToProcess 字段,如果它不是 1,我会读取。但这并不能解决我的问题。客户端/PC 读取了客户记录,其他客户端/PC 可能读取相同的记录,在第一个客户端/PC 更新 readToProcess 字段为 1 之前... 处理完所有客户后出现 10 - 100 次重复读取/处理(完成)
我必须限制每条客户记录只能读取一次..(此表不用于其他目标)
我怎么解决这个问题?是否可以将 readToProcess 字段更新为 1,而我在同一查询中读取该行...如果可能的话,您可以为上面的表编写 sql 查询...。
或者你推荐什么?
非常感谢,
对不起,我的英语不好...