0

我正在开发 ASP.NET 在线商店。每个产品都有一个实体,即使是用户销售它,它的实体也应该减少。因为这个字段是所有用户共享的,所以可能是负数(因为共享数据的问题)。现在,我该如何防止这个问题?我可以为此使用交易吗?如果可以,我应该使用什么隔离级别?如果没有,我该怎么办?

4

1 回答 1

0

如果可能,我会建议进行一些设计更改。而不是减少/增加,换句话说,更新一个字段,我会在每次卖出时插入一条记录。然后我会创建一个存储过程并安排它定期运行它。

这将确保一次只有一个进程更新计数器。

这是我知道保证 100% 字段一致的唯一方法。

有些人可能会建议悲观锁——我在任何情况下都不会使用它。

于 2010-04-21T16:37:14.310 回答