rs.open参数含义

RS.OPEN SQL,CONN,A,B

A:

ADOPENFORWARDONLY(=0)
只读,且当前数据记录只能向下移动

ADOPENKEYSET(=1)
只读,当前数据记录可自由移动

ADOPENDYNAMIC(=2)
可读写,当前数据记录可自由移动

ADOPENSTATIC(=3)
可读写,当前数据记录可自由移动,可看到新增记录

B:

ADLOCKREADONLY(=1)
缺省锁定类型,记录集是只读的,不能修改记录

ADLOCKPESSIMISTIC(=2)
悲观锁定,当修改记录时,数据提供者将尝试锁定记录以确保成功地编辑记录。只要编辑一开始,则立即锁住记录。

ADLOCKOPTIMISTIC(=3)
乐观锁定 ,直到用Update方法提交更新记录时才锁定记录。

ADLOCKBATCHOPTIMISTIC(=4)
批量乐观锁定,允许修改多个记录,只有调用UpdateBatch方法后才锁定记录。
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 
  rs.open sql,conn,1,1 读取记录 select 
  rs.open sql,conn,1,3 只更新记录最好 update 
  rs.open sql,conn,2,3 插入和删除最好 insert delete



文章来自: 本站原创
Tags:
评论: 0 | 查看次数: 9545