我一直使用Execute进行插入,更新数据!我现在想知道的的是,当多用户同时使用Execute操作同一表格或记录时,它是否有默认的锁定处理或保护机制来避免冲究,这种机制是什么?是否有象OPEN()那样的参数机制来加以控制,还是只是固定不能改变的.我还可能使用别的什么方法来保护多用户同时使用Execute操作时不会发生冲突!能否给出具体点的说明,有代码为上! 
                                             SXSLYY 敬上!

解决方案 »

  1.   

    我一般使用VB+ACCESS,请问在这种条件下,会是什么情况!
      

  2.   

    access支持并发操作,理论上最大并发数255,但稳定性不是很好。
      

  3.   

       我想就具体到ACCESS这个数据库来说说!是不是说我编写只要执行Execute操作就可以,不必再关心多用户同时操作时会不会起冲突!这部分处理工作是由数据库来完成的.
       还是说我要做一定的处理,但象OPEN()是可以指定加锁等参数的,而ADO的Execute操作不知道如何指定加锁等这类控制方法!
       
      

  4.   

    这个是数据库的功能吧.
    如果你想自己控制,就只能控制自己的程序单个插入,可以用cmutex来操作............
      

  5.   

    是不是说如果使用Execute操作,防止冲突冲的工作只能由数据库的并发性能来决定,自己不用控制.("cmutex来操作",在VB中如何操作?)
      

  6.   

    access可以以独占方式打开数据库,这样其它程序或线程是不能再打开该数据库文件的,具体是在open的时候做文章:
    m_pConn->Open(L"Provider=Microsoft.Jet.OLEDB.4.0;\
    Data Source=test.mdb;Persist Security Info=False;Mode=Share Exclusive",
      L"",L"",adOpenUnspecified);
      

  7.   

    要看你的数据库是否支持事务处理,在Execute前开始事务,在Execute后提交事务。
      

  8.   

        我还想知道除了事务控制外,使用Execute进行操作时,其本身有没有默认的加锁机制(如OPEN有默认),它们是什么.多用户同时使用Execute时难道ADO本身一点保护机制都没有吗?是只是提交这一动作,后全靠数据库本身的性能来处理决定的吗?
      

  9.   

    我也可试过了,几率是小,但我想知道ADO的Execute操作本身采没采用了并行保护机制,如采用了默认的是什么?求教各位达人!
      

  10.   

    你可以问问access板块的高手
    他们对access应该有研究
    好运