这个的话我想说下,把秒杀系统的插入和修改的话,insert在前update在后的话,这样的话,是不是在秒杀系统的规定时间内,都可以insert呢,那么在商品没有库存的情况下,是不是可以insert但是到update判断库存为0,那么数据库就需要回滚。这样的话对系统没有影响吗。
没有库存的情况下会insert,但是update执行时更新条数小于0,就会抛出异常、事务回滚。
好处就是: 用户第一次执行秒杀 insert -> update(持锁) ->commit(释放锁)
用户第二次执行秒杀 insert -> result
减少了事务行级锁的时间。
事务会回滚,insert无效?