当两个事务修改同一条数据时,会产生数据不一致的情况。
解决办法:乐观锁或者悲观锁
悲观锁分成两种:共享锁和排他锁。
添加共享锁:select * from db lock in share mode;
添加排他锁:select * from db for update。
乐观锁则类似于cap机制。
乐观锁的使用件是数据存在标识,对数据的每次修改都会修改标识。标识可以是版本号或时间戳。
在每次修改数据的时候,用该字段作为条件执行修改。当两个事务同时查询,先后提交修改后,较晚提交的事务修改失败,因为标识值已被修改。