并发访问mysql行

时间:2012-08-19 23:42:31

标签: mysql concurrency product

我正在开发一个VB.NET管理软件,我提出了一个问题。我们的软件将安装在多台机器上,每台机器都可以开具发票和账单。现在,当我保存发票时,我使用SELECT ... FOR UPDATE查询锁定所需产品的行,而这项工作实际上软件的其他副本无法保存发票直到上一次交易完成,但是应用程序也会挂起,直到达到超时。那么,有更好的方法来处理对产品表的多次访问,或者可能是一种在应用程序等待锁定释放时不挂起应用程序的方法吗?

1 个答案:

答案 0 :(得分:0)

您可以使用乐观锁定。在表中添加列“版本”。这篇文章可能有所帮助:http://www.dbasupport.com/forums/archive/index.php/t-7282.html