新手写订单逻辑,扣库存、写订单、扣钱,中间某一步失败了,数据不对,钱扣了订单没生成,今天说最简单的数据库事务。
事务是什么
就是一组操作,要么全部成功,要么全部失败,不会出现一半成功一半失败的情况。比如下单:扣库存、生成订单、扣余额,三个操作放一个事务里,任何一步失败,全部回滚,回到操作前的状态,不会出现扣了钱没订单的情况。
新手怎么用
MySQL的InnoDB引擎支持事务,用PDO的话,开启事务,三个操作都成功就提交,哪个错了就回滚,几行代码的事,涉及钱、库存的操作必须加事务,不然数据错了麻烦大。
本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。
0