mysql的悲观锁与乐观锁的实现
1.悲观锁
所谓的悲观锁,就是对查询的数据保持悲观的态度,所以每次查询都会进行锁行,怕查询的数据会被被人修改。
实现悲观锁:
select for updata
比如对某张表进行查询时可以:
select * from table where id =? for update
2.乐观锁
认为读多于写,对数据持乐观态度
实现乐观锁:
增加version字段,每次有新的修改version进行修改
比如:
select * from table where id=?;update table set vision=vision+1 where id=? and version=1;