比如一个商品的数据库中的数量是10,每次向购物和中添加商品数据库中的数量就会-1,那么如何防止电脑断电导致的数据错误的问题呢?

解决方案 »

  1.   

    ups头一次听说,能说详细点吗
      

  2.   


    公司用的叶不是InnoDB的,而且InnoDB也解决不了
      

  3.   

    这个就好像,超市有人买东西,把东西拿走了,这时候别人是不能也买这个东西的,否则有人先结算了,后面人也结算买这个,就会出现后面的不能买,或者一物两买.一定要把这个选中但是没结算的记录住,如果不是会员买的,也可以用临时的表记录下cookie和拿走的,事后一定时间内清理.
      

  4.   

    引用 6 楼 kyzy_yy_pm 的回复:引用 3 楼 diannaomingong 的回复:-1以后,停电了,所以少了商品?我没弄过.想了下, 可以用额外的字段来计算当前商品数量,比如当前商品数量-1, 然后另外一个字段如"拿走的商品"+1,这两个操作弄成个事务. 如果事务成功, 那么接下来如果结算了, "拿走的商品"就结算掉.否则一定时间后系统回收此变量,加回去.这种方法真的不错!