我做的系统是网上书店,用的是SQL2000+VS2008的环境,这个系统后台管理和前台管理都有一个处理订单的页面,前台是用户支付款项,确认收货,申请退订的订单操作,后台是管理员确认发货,驳回退订或者同意退订的订单操作.
我在SQL2000中用一个Order表来存储订单信息,有一个OrderStatus字段(通过更新该字段的值,然后来判断是1:未付款,2:已付款,等待发货,3:已发货,等待确认收货,4,用户收货,订单完成,5用户申请退定,6同意退定,订单无效)
这个表在前台和后台的订单操作页中都用到了,比如用户(前台)还没支付的时候,我点支付事件(这里暂时不考虑怎么支付),这时更新Order表的OrderStatus为2(已支付,等待发货),而且也更新了支付时间(PayTime)这个字段,后台管理员刷新后看到该用户已支付(确认已支付的过程忽略),便点发货事件,此时更新了Order表的OrderStatus为3(已支付,等待确认收货),而且发货时间(ConsignmentTime)的字段的值也更新了,接下来就是 用户刷新看到已发货,但是如果要申请退定,点申请腿定事件的时候,要把Order表的OrderStatus字段值更新为5(申请退订),问题就在这,第三次访问该字段时候,该字段所在记录的申请退定字段可以更新成功,但是OrderStatus字段的值却始终更新不过来,而且要等上好几分钟!!!!
我测试了下,如果把状态改成2,从已付款开始,到了对该字段的第三次更新,也不成功,也就是说更新的代码编写是没错的,那问题出在哪?????????????