后端实现: 后台的API接收到更新请求时,需要从请求中解析出要更新的字段、新的字段值,以及那个伴随的“版本号”。 在执行SQL UPDATE语句时,会加入一个`WHERE`条件:`WHERE id = ? AND version = ?`。 数据库执行该SQL后,会返回一个“影响的行数”。 如果影响的行数是1,说明更新成功,版本号自然会被数据库(或应用逻辑)自增。 如果影响的行数是0,说明没有找到符合`id`和`version`条件的记录,意味着版本号不匹配,就发生了并发冲突。此时,后台应该返回一个相应的错误码或消息给前端。
2. 悲观并发控制 (Pessimistic Concurrency Control PESSIMISTIC)