日期:2014-05-19  浏览次数:20765 次

数据库记录新增或是修改的方案!
库存处理中一个很复杂的处理,要在一个事务中同时新增多条库存记录.那么在并发处理时,有可能出现冲突,即:第一个事务判断出应该增加一条新的记录,而第二个事务也认为应该增加一个新的记录.则肯定有一方将插入失败.

如果是更新的话可以使用更新锁,但是新增怎么办呢?难道要锁定整个表吗?

------解决方案--------------------
加一个判断的事务阿,验证这条记录是否已经存在了
------解决方案--------------------
ID冲突?
使用自增长ID
或者使用 每次 加入都 set @myID = (select max(id)+1 from yourTB)

------解决方案--------------------
那就不是主键冲突的问题了,而是二个事务处理了同一笔业务?

就好像售票一样,2个窗口出售同一张票?