这种存储过程同时执行的问题怎么样解决?分不够我再给!

xxdino 2006-02-21 01:21:20
我们开发了一个电子商务网站,在存储过程中我们检查了用户的余额,然后再进行购买操作,但是今天碰到了一个很奇怪的问题,就是用户在web上连续发送提交请求,我在数据库中查到了两条购买记录,而且是同时出现的,但是在存储过程中我确实判断了用户余额是否充足,查了以后发现两次提交在同一时间出现,结果没有判断到用户余额充足,出现了重复购买的情况。请问这种情况如何避免??
...全文
79 9 点赞 打赏 收藏 举报
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lsqkeke 2006-02-21
学习 :)
  • 打赏
  • 举报
回复
zlp321002 2006-02-21
--把你事务处理的代码贴出来!

  • 打赏
  • 举报
回复
caiyunxia 2006-02-21
对,必须在一个事物
  • 打赏
  • 举报
回复
lovcal 2006-02-21
赞同子陌的意见

将判断和购买方在一个整体事务中
  • 打赏
  • 举报
回复
子陌红尘 2006-02-21
将查询余额和购买操作封装到一个事务中,以独占方式锁余额信息表并持有该锁直到事务结束。
  • 打赏
  • 举报
回复
xxdino 2006-02-21
都做了的啊!
  • 打赏
  • 举报
回复
xxdino 2006-02-21
我们确实是这样做的啊,而且还用了事务!
  • 打赏
  • 举报
回复
OracleRoob 2006-02-21
优化存储过程SQL语句,提高执行速度,减少运行时间
使用事务,保证处理数据一致性
在前台判断余额的同时,记帐时,后台存储过程中再次判断
  • 打赏
  • 举报
回复
-狙击手- 2006-02-21
在购买记录提交前再查余款
  • 打赏
  • 举报
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2006-02-21 01:21
社区公告
暂无公告