详解rs.open sql,conn,1,1后的数字参数的含义

RS.OPEN SQL,CONN,A,B

参数A为设定游标的类型,其取值为:
0,仅向前游标,只能向前浏览记录,不支持分页、Recordset、BookMark
1,键集游标,其他用户对记录所做的修改将反映到记录集中,但其他用户增加或删除记录不会反映到记录集中。支持分页、Recordset、BookMark
2,动态游标功能最强,但耗资源也最多。用户对记录所做的修改,增加或删除记录都将反映到记录集中。支持全功能浏览。
3,静态游标,只是数据的一个快照,用户对记录所做的修改,增加或删除记录都不会反映到记录集中。支持向前或向后移动

参数B为记录集的锁定类型,其取值为:
1,锁定类型,默认的,只读,不能作任何修改
2,当编辑时立即锁定记录,最安全的方式
3,只有在调用Update方法时才锁定记录集,而在此前的其他操作仍可对当前记录进行更改、插入和删除等
4,当编辑时记录不会被锁定,而更改、插入和删除是在批处理方式下完成的

打开数据记录集方法其实不止一种,但是我们用的最多的就是 rs.open sql,1,1 的方法,可是后面的数字参数很多人不解其意,下面我们来介绍一下。

其实open方法后面有多个参数:
CursorType LockType CommandType
比如:
rs.open sql,1,1


也可以写成:
rs.cursorType = 1
rs.LockType = 1
rs.open sql


其中CursorType代表从一个表或者一个SQL查询结果返回的记录。

这个参数有四个值分别是:
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


CommandType这个参数由于很少用到,这里就不讲了。
[本日志由 parno 于 2011-03-22 02:31 AM 编辑]
上一篇: 不让IE显示图片工具
下一篇: 真正安全起来——网页脚本攻击防范全攻略
文章来自:
引用通告: 查看所有引用 | 我要引用此文章
Tags: SQL
相关日志:
评论: 0 | 引用: 0 | 查看次数: 6517