关于并发时逻辑上冲突(不是数据错误)的问题
现在假如库存数据为20, 
 A   读取,   发现为20,   就UPDATE   数据,申请领出15个, 
 B   同时读取,   发现有20个,   也申请15个.   
 因为B在申请之前一定会先读取,   然后申请,   但是假如A的Update   动作刚好发生在B的这两个读取和UPDATE   之间,   则数据会变成负数.      
 固然,   可以用触发器保证库存不为负,   但是如果触发器拒绝B   的Update,   在程序里却会收到SQL   语句正常执行的结果,   也就是说,   虽然数据没有错误,   但是程序端却认为A   和B   都成功地申请到了15个.   ------怎么避免这种问题?   
 谢谢!!
------解决方案--------------------使用事务,如果不完全执行时返回标识值
------解决方案--------------------必面要用事务处理的.这是事务处理的经典使用案例.
------解决方案--------------------你自己結合鎖的機制選擇一種方法吧。記得好像又一遍分析的比較仔細的貼。你找找