日期:2014-05-17  浏览次数:20895 次

100分求详细解释
recordset.Open   Source,ActiveConnection,CursorType,LockType,Options  

求下面三个的解释:
CursorType,   LockType,   Options
要求:
1.请用自己的话
2.请举例
3.请详细
4.请透彻
5.请让我明白

------解决方案--------------------
1、Source 参数可以是一个 Command 名称,一个 SQL 命令、一个指定的数据表

名称或一个指定的 Stored Procedure。Recordset 对象可通过 Source 属性连接

Command 对象。
2、ActiveConnection 参数可以是一个 Connction 对象名称或是包含“数据库连

接信息( ConnectionString )”的字符串信息。Recordset 对象可通过

ActiveConnection 属性连接 Connection 对象。
3、CursorType 参数表示启动数据的游标类型。
常数值说明:

AdOpenForwardOnly 0 启动只能向前( Forward-only )的游标,缺省值
AdOpenKeyset 1 启动 Keyset 类型的游标
AdOpenDynamic 2 启动 Dynamic 类型的游标
AdOpenStatic 3 启动 Static 类型的游标

4、LockType 参数表示采用的 Lock 类型。
常数值说明:

AdLockReadOnly 1 以只读方式启动,无法运行 AddNew、Update、Delete

等方法,缺省值
AdLockPessimistic 2 当数据正在更新时,系统会暂时锁定其它用户的动作

,以确保数据一致性
AdLockOptimistic 3 当数据正在更新时,系统不会暂时锁定其它用户的动


AdLockBatchOptimistic 4 当数据正在更新时,其它用户必须将 CursorLocation

属性设为 adUseBatch ,才能对数据库操作

5、Options 参数表示对数据库请求的类型。
常数值说明 :

AdCmdUnknown -1 所指定的 CommandText 参数类型无法确定,缺省值
AdCmdText 1 所指定的 CommandText 参数是一般的命令类型
AdCmdTable 2 所指定的 CommandText 参数是一个存在的表名称
AdCmdStoredProc 3 所指定的 CommandText 参数是 Stored Procedure 表名称


------解决方案--------------------
CursorType
RS打开时的游标类型,确定了RS打开时能执行什么操作,可以常数,也可以数字表示,
adOpenForwardOnly、adOpenKeyset、adOpenDynamic及adOpenStatic,分述如下:
--------------------------
常数 常数值 说明
-------------------------
adOpenForwardOnly 0 仅向前游标,默认值。除了只能在记录中向前滚动外,与静态游标相同。当只需要在记录集中单向移动时,使用它可提高性能。
adOpenKeyset 1 键集游标。尽管从您的记录集不能访问其他用户删除的记录,但除无法查看其他用户添加的记录外,键集游标与动态游标相似。仍然可以看见其他用户更改的数据。
adOpenDynamic 2 动态游标。可以看见其他用户所作的添加、更改和删除。允许在记录集中进行所有类型的移动,但不包括提供者不支持的书签操作。
adOpenStatic 3 静态游标。可以用来查找数据或生成报告的记录集合的静态副本。另外,对其他用户所作的添加、更改或删除不可见
------解决方案--------------------
LockType 可选。确定提供者打开 Recordset 时应该使用的锁定(并发)类型的 LockTypeEnum 值,可为下列常量之一(参见 LockType 属性可获得详细信息)。
值 常量 说明
--- -------------------------------- -----------------------
1 AdLockReadOnly (默认值)只读 — 不能改变数据。
2 AdLockPessimistic 保守式锁定,提供者完成确保成功编辑记录所需的工作,通常通过在编辑时立即锁定数据源的记录。
3 AdLockOptimistic 开放式锁定(逐个) — 提供者使用开放式锁定,只在调用Update 方法时才锁定记录。
4 AdLockBatchOptimistic 开放式批更新—用于批更新模式(与立即更新模式相对)。
------解决方案--------------------
Options 可选,一般不写

参数表示对数据库请求的类型。
常数值说明 :

AdCmdUnknown -1 所指定的 CommandText 参数类型无法确定,缺省值
AdCmdText 1 所指定的 CommandText 参数是一般的命令类型 即SQL
AdCmdTable 2 所指定的 CommandText 参数是一个存在的表名称 即表名
AdCmdStoredProc 3 所指定的 CommandText 参数是 Stored Procedure 表名称 即存储过程


例子:
rs.open "select * from tablename ",conn,1,3
可读写打开,用在添加,删除,修改操作

rs.open "select * from tablename ",conn,1,1
只读打开,用在查询操作