标签: mysql
我有一个包含“门票”的MySQL InnoDB表。门票是“开放”,“锁定”,“关闭”。我有多个远程客户端应用程序在此表上运行选择查询以获取“打开”票证。我想确保不同的客户端不检索相同的行。
我现在的流程是:
问题选择开放... 将表格状态更新为已锁定... 做票的东西 将表格状态更新为已关闭。
显然,在客户选择并打开票证然后将其锁定之间存在巨大的竞争条件。如何防止其他客户端以非阻塞方式访问同一行?