pb 操作oracle数据库,
**************************************************************
一台电脑在数据库中查找当前最大号,然后执行+1处理,写入数据库,这个没问题
**************************************************************
**************************************************************
现在有两个电脑同时执行查询最大,然后+1,写入数据库
现在问题是有时候两个同时写入一样的值
分析原因为:两台电脑同时查询出一数值(如:2014),然后一个写入新数值(加1操作:2015),
这时另一个继续执行2014 + 1,写入的值也为2015.
怎么避免这个问题啊,愁晕了

**************************************************************
------解决方案--------------------
查一下自增列的相关信息。。。
------解决方案--------------------
建议使用Oracle 的Sequence 来处理你的问题
------解决方案--------------------
这不就是多用户并发的问题吗,
我一般都是建个流水表存着这些号码
------解决方案--------------------
2--3楼的都可以试试 楼主原来的方法存在并发性的问题
------解决方案--------------------
同意三楼的做法,一般都有一个流水表保存各种最大编号
使用时,先锁数据行,然后查询出记录号,加1,使用,再将流水表的记录号改写,解锁
当然,在使用过程,最好不要有Message等停止操作。最好一次性操作,要么成功提交事务,要么失败回滚事务。
不然的话,其他客户端就都死了
------解决方案--------------------
弟兄,还是加个自增列的省心