ADO的IsolationLevel
时间:2005-02-06 11:58 来源:cww 作者:未知 阅读:次
来源:cww 请先叁照RDO 的IsolationLevel一文中,对Isolation Level的介绍,在这里,要提出的 是OpenLink Informix ODBC Driver的限制,使得我们只能用Client端的Scroll Cursor, 如果用Server端的Cursor,则要以adFrowardOnly的Cursor来开启。而Informix只有在 Server端的Cursor才能设定IsolationLevel,而且要在Transaction之下才能够有作用, 使得ADO Connection物件的IsolationLevel属性的设定不能起作用,而有其特殊的用法。 但在这里得再特别提出说明,建议只能设定成Dirty Read/Read Committed,不要设定成 Cursor Stability,经我的测试,使用Cursor Stability时,不像RDO有预期的效果
然而在SQL Server 6.5呢,则有不错的效果。特性如下: 1.在Connection物件开启前便设定IsolationLevel,如果是Repeatable Read,则在Recordset 开启之前便得Begin Transaction。Read Committed/ Dirty Read可不必在Transaction中 开启Recordset。 2.就算是Client端的Cursor,设定为Repeatable Read的IsolationLevel,也会使Recordset 内的资料在其上有一个Share Lock,而不是只有 Server端的 Cursor会如此。然而, Read Committed/ Dirty Read是针对Server端的Cursor所设定的,也就是说,如果我们 设定Read Committed而且是Client端的Cursor,而某一笔Data被其他Process修正了且未 Committed,那麽我们Move到该笔时,并不会因而停下来,因为我们此时读取的是在Client 端的资料。 3.如果设定为 adOpenForwardOnly, adLockReadOnly的Recordset,则除非IsolationLevel 设定为 Repeatable Read,否则会是Dirty Read的行为方式 4.Read UnCommitted或Dirty Read必需是在adOpenForwardOnly, adLockReadOnly时才能 开启
|
|||
(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
相关内容
- ·用DAO或ADO正确访问Access 2000
- ·Access开发网络共享版技巧(多人同时操
- ·access中ADO与DAO格式的区别和写法【总
- ·access执行操作查询的几种方法对比
- ·Access中CurrentDb().Execute 和DoCmd.
- ·[源创技巧]在ACCESS中使用代码来自动创
- ·更新访问权限 (Jet) 数据库中的 40 多
- ·【实例】ADO代码计算余额法
- ·DAO实现的子窗体记录分页显示
- ·分别使用DAO和ADO连接外部数据库和Sql
- ·怎样判断一个表是否存在于数据库中? (D
- ·处理加了密码的MDB文件
- ·谈ADO访问不同数据库的差别
- ·DAO基础(4)
- ·DAO基础(3)
- ·DAO基础(2)
最新内容
推荐内容