采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
这是第二遍看该节了,还是想不明白,事务有锁的意思,网上找了MySQL有关事务、锁的资料,说:事务在并发的时候,会出现,不可重复读和幻读等问题。那咱们这代码在并发时会出现这样的情况吗?
比如:请求A和请求B,当请求A正要执行但还没执行if($order->status==1)时请求B来了,也来查询订单信息,发现支付状态还是1,不还会减少库存量
另外还想请教:TP5中使用模型锁,是不是就是mysql中的悲观锁或者乐观锁中的一种
你还是没有理解锁的概念。A和B都来了,总有一个先进入查询把,既然先进入的当然会锁住,后面的就查询不了。等它能查询了,第一个已经更新了数据库。这有什么问题呢?其实,TP5的模型锁是事务锁和你说的悲观和乐观还是有区别的。如果要详细学习数据库,这个是另外一个层面的内容了。
今天又查了关于事务的隔离级别:TP5的模型锁是事务锁,如果该事务的隔离级别最高(serializable: 最严格的隔离级别,事务必须依次进行),那我就明白了。
登录后可查看更多问答,登录/注册
全栈工程师/前后端都讲/架构思想/ RESTFul API、MySQL表设计
1.4k 23
1.5k 21
1.6k 19
1.6k 18
1.3k 18