悲观锁定#
查询语句构造器也包含一些可用以协助你在select语法上作「悲观锁定」的函数。若要以「共享锁」来运行语句,则可在查找上使用sharedLock方法。共享锁可避免选择的数据列被更改,直到事务被提交为止:
DB::table('users')->where('votes','>',100)->sharedLock()->get();
此外,你也可以使用lockForUpdate方法。「用以更新」锁可避免数据列被其它共享锁修改或选取:
DB::table('users')->where('votes','>',100)->lockForUpdate()->get();