Laravel的where写法导致lockforupdate失效
最近发现laravel的lockforupdate无效,排查出一个问题
->whereRaw('count > send_num')->lockforUpdate()//此语句锁是生效的
->where('count','>','send_num')->lockforUpdate()//此语句锁是失效的
两种写法不影响查询结果,但会影响表锁的生效
打印出SQL对比
where count > send_num //whereRaw 的sql
where `count` > send_num //where 的sql
区别就在于count字段的反引号,查了很多处资料
得到的信息:
- count 是可以做列名使用合法
- 此处的锁指的是表锁
但是没有找到关于反引号导致锁失效的,希望得到各位的帮助