' 修改 Do While Not rs.EOF If rs.Fields(0) = "hqh" Then rs.Fields(1) = "999" End If rs.MoveNext Loop '添加 rs.AddNew rs.Fields(0) = "kmx" rs.Fields(1) = 77 rs.Fields(2) = 201 rs.Update
Amoon(阿木) : 我在另一用户Update之前就已经锁定了,应该 update 不了才是。
to Amoon(阿木) 是的,上面的就是代码。 to skywax(晚风) 嘻嘻学我,要交点专利费的,我刚刚在CSDN.net 上申请了这个提问方式的专利。 ^o^ ~~~~~~~~~~~~~~
to skywax(晚风):天,你还让不让我上 CSDN 啊? to luckyhqh(luckyhqh):我快下班了,我晚上回家试好了告诉你。
代码太长啦,广袤无垠,一望无际啊,我晕倒....
foolishtiger 长老,我用的是Adodb,与AdoDC两者应该是一样的,
下面是一些缩减的代码:
sql = "select * from TB001"
adoRs.CursorType = adOpenDynamic
adoRs.CursorLocation = adUseServer
adoRs.LockType = adLockPessimistic
adoRs.Open sql, adocn, , , adCmdText
用来锁定,但是 修改,添加照用,这是.......................???????????????????
rs.LockType = adLockPessimistic
rs.CursorLocation = adUseServer
rs.CursorType = adOpenKeyset
rs.Open "select * from TB001", adocn, , , adCmdText
rs.MoveFirst
' 修改
Do While Not rs.EOF
If rs.Fields(0) = "hqh" Then
rs.Fields(1) = "999"
End If
rs.MoveNext
Loop
'添加
rs.AddNew
rs.Fields(0) = "kmx"
rs.Fields(1) = 77
rs.Fields(2) = 201
rs.Update
我在另一用户Update之前就已经锁定了,应该 update 不了才是。
是的,上面的就是代码。
to skywax(晚风)
嘻嘻学我,要交点专利费的,我刚刚在CSDN.net 上申请了这个提问方式的专利。
^o^ ~~~~~~~~~~~~~~
to luckyhqh(luckyhqh):我快下班了,我晚上回家试好了告诉你。
谢谢阿木长老。请受小弟一拜。 __^.
你在Command1_Click事件中写了 adoRs.LockType = adLockPessimistic
而在Command4_Click事件中也写了 rs.LockType = adLockPessimistic
这样前面的在Command1_Click中加的锁失效。
rs任何操作都不会于遇到adoRs加的锁的限制了。:)
来迟了,来迟了,来迟了,来迟了...
我试了一下,如果在Command4_Click中我用只读锁或批更新锁,确实可以锁定,但是却没有提示.. 另外,如果我想在不同的地方都用悲观锁,这又如何达到目的.