乐观并发检查失败。已在此游标之外修改了该行这是一个比较郁闷的问题,因为我的“超级男女”偶尔会遇到程序500错误,但是刷新一次就好了
今天回到家偶然间又出现这个问题了,于是我想找出问题所在,刷新了N多次,结果终于盼到出错页了:乐观并发检查失败。已在此游标之外修改了该行。
居然是这么一个提示,程序执行失败还乐观个屁啊,在网上查了一下,得到如下解决办法,不知道能不能凑效:
------------------------------------------------------------------------------------------
修改记录时,用1,2打开。
==================================
RS.OPEN SQL,CONN,A,B
A: ADOPENFORWARDONLY(=0) 只读,且当前数据记录只能向下移动
ADOPENSTATIC(=3) 只读,当前数据记录可自由移动
ADOPENKEYSET(=1) 可读写,当前数据记录可自由移动
ADOPENDYNAMIC(=2) 可读写,当前数据记录可自由移动,可看到新增记录
B: ADLOCKREADONLY(=1) 默认值,用来打开只读记录
ADLOCKPESSIMISTIC(=2) 悲观锁定
ADLOCKOPTIMISTIC(=3) 乐观锁定
ADLOCKBATCHOPTIMISTIC(=4) 批次乐观锁定
------------------------------------------------------------------------------------------
因为同一时刻可能有N多个人请求数据的修改操作,所以可能这时候就会有冲突吧,能不能解决还要观其变。
另外,如果屡次遇到怎样的情况,该考虑一下使用存储过程提高效率了。