记录集的锁定类型有四种我知道,但具体什么情况下用不清楚?
另外,如果我在事务中处理记录集,那么这时对记录集的类型有什么影响吗?为什么我的事务一开始,在没有结束时,其他用户不能slect我
的事务处理涉及到的一张表,这张表被整个锁定了,怎样解决这个问题!

解决方案 »

  1.   

    cursorlocation属性用到的常数
    常数 含义 
    aduseclient 使用客户端游标库提供的游标。adodb.recordset要求客户端游标 
    aduseserver 使用数据源提供的游标,通常(但非绝对)位于服务器上(默认值) cursortype属性用到的常数
    常数 含义 
    adopenforwardonly 提供单向移动游标和只读recordset(默认值) 
    adopendynamic 提供可滚动游标,可显示其他用户对recordset所做的改动(包括添加新记录) 
    adopenkeyset 提供可滚动游标,只隐藏其他用户所做的改动,类似于dynaset类型的dao.recordset 
    adopenstatic 提供一个位于recordset静态拷贝上的可滚动游标,类似于snapshot类型的dao.recordset,但多了可更新特性
      

  2.   

    你可以看《MS SQL技术内幕》,里面详细的说了SQL Server中锁的知识和情况,推荐你说的别人不能select你操作的表跟很多可能的情况有关,DB的并行级别,DB中的key情况等
    这些情况都会决定锁的类型