|
8#
楼主 |
发表于 2015-2-7 23:18:53
|
只看该作者
谢谢高人的指点。似乎第二个参数用adOpenDynamic 比用adOpenKeyset快许多,不直达啥原因。
Sub tests()
Dim res As ADODB.Recordset
Set res = New ADODB.Recordset
'res.Open "a", CurrentProject.Connection, adOpenDynamic, adLockOptimistic
res.Open "a", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
With res
For i = 1 To 100
.AddNew
.Fields("x") = i
Next i
res.UpdateBatch
End With
Set res = Nothing
End Sub
这个字符串 自己理解下(现在只是照抄),下面是accessoft搜到的东东 自己消化中,太高兴了。谢谢zhidao的热心帮助
帮学员解答ADO参数意思/adOpenKeyset/adLockOptimistic
时 间:2012-04-26 16:35:48
作 者:风行 ID:16058 城市:江阴 QQ:2851379734点击这里给风行发消息
摘 要:请教一下:rst.Open "tblVoucher", conn, adOpenKeyset, adLockOptimistic什么意思
正 文:
锡林郭勒--海涛(17755315) 11:35:15
请教一下:rst.Open "tblVoucher", conn, adOpenKeyset, adLockOptimistic什么意思
UMVsoft技术服务12(2430898254) 11:35:56
简单理解为打开表tblVoucher
UMVsoft-张志(3059255) 11:46:06
这个参数有四个值分别是:
adOpenForwardOnly 表示只允许在记录集内的记录间往前移动。这个是缺省值。
adOpenKeyset 反映由其它用户所做的对记录的改变或者删除动作,但并不反映由其它用户做作的添加新记录的动作。
adOpenDynamic 反映由其它用户所做的对记录的改变或者删除动作,包括添加的新记录
adOpenStatic 不反映其它用户对记录所做的修改,添加,删除动作。
这四个值VBSCRIPT预定义位
adOpenForwardOnly = 0
adOpenKeyset = 1
adOpenDynamic = 2
adOpenStatic = 3
lockType 表示当打开记录集时,数据提供者用于锁定数据库的类型:
adLockReadOnly 数据不能改变,这是缺省值!
adLockPessimistic 数据提供者在开始编辑数据的时候锁定记录
adLockOptimistic 仅当调用update方法时,数据提供者锁定记录
adLockBatchOptimistic 用于批处理修改
他们的常量值定义分别是:
adLockReadOnly = 1
adLockPessimistic = 2
adLockOptimistic = 3
adLockBatchOptimistic = 4
UMVsoft-张志(3059255) 11:47:07
adLockOptimistic 仅当调用update方法时,数据提供者锁定记录
UMVsoft技术服务12(2430898254) 11:47:27
adLockReadOnly 1 缺省值,Recordset对象以只读方式启动,无法运行AddNew、Update及Delete等方法
adLockPrssimistic 2 当数据源正在更新时,系统会暂时锁住其他用户的动作,以保持数据一致性。
adLockOptimistic 3 当数据源正在更新时,系统并不会锁住其他用户的动作,其他用户可以对数据进行增、删、改的操作。
adLockBatchOptimistic 4 当数据源正在更新时,其他用户必须将CursorLocation属性改为adUdeClientBatch才能对数据进行增、删、改的操作
锡林郭勒--海涛(17755315) 11:49:35
谢谢老师,我研究一下。
UMVsoft-张志(3059255) 11:50:48
其实不需要研究更深入,知道是这么回事就行了。
我也是想弄更清楚点时,才百度的,其实也记不住意思
但这并不影响我开发软件
锡林郭勒--海涛(17755315) 11:52:42
记住其含义更容易帮助记忆这些代码,否则马上就忘记了。
UMVsoft-张志(3059255) 11:53:54
是的
|
|