我MDB库里有一条记录 弄得整个系统都摊掉了,由于您和其他用户试图同时改变同一数据,导致 Microsoft Jet 数据库引擎停止进程。这条记录删还删不掉请问我怎么解决,
怎么把他删掉,
怎么防止他 出现这样的记录,还有求教一下,事务回滚是怎么回事,ADO的事务是怎么回事 
MDB的库,可不可以 存在 存储 修改动作的排队, 怎么实现 。。

解决方案 »

  1.   

    这个问题怎么解决好,没经验,也许事务处理是个办法,听听楼下的建议。
    不过ACCESS是桌面数据库,对多用户的并发操作支持不好,所以建议LZ要是网络数据库的话,还是改用SQL
      

  2.   

    今天刚才看了这个方面的书:
       Rs.Open "SELECT * From UserName Where UserName = '" & FormLog.Text1(0).Text & "'", Cn, adOpenDynamic, adLockPessimistic或 adLockOptimistic
      你查着看看这两个锁的区别,保证可以解决你的问题
      

  3.   

    RS.OPEN SQL,CONN,A,BA: ADOPENFORWARDONLY(=0) 
    只读,且当前数据记录只能向下移动ADOPENKEYSET(=1) 
    只读,当前数据记录可自由移动ADOPENDYNAMIC(=2) 
    可读写,当前数据记录可自由移动ADOPENSTATIC(=3) 
    可读写,当前数据记录可自由移动,可看到新增记录B:ADLOCKREADONLY(=1) 
    缺省锁定类型,记录集是只读的,不能修改记录ADLOCKPESSIMISTIC(=2) 
    悲观锁定,当修改记录时,数据提供者将尝试锁定记录以确保成功地编辑记录。只要编辑一开始,则立即锁住记录。ADLOCKOPTIMISTIC(=3) 
    乐观锁定 ,直到用Update方法提交更新记录时才锁定记录。ADLOCKBATCHOPTIMISTIC(=4) 
    批量乐观锁定,允许修改多个记录,只有调用UpdateBatch方法后才锁定记录。当不需要改动任何记录时,应该使用只读的记录集,这样提供者不用做任何检测。
    对于一般的使用,乐观的锁定可能是最好的选择,因为记录只被锁定一小段时间,
    数据在这段时间被更新。这减少了资源的使用。
      

  4.   

    Sql-Server  是不是也存在同样的问题, 事件不能排队的问题?
      

  5.   

    谢谢   sky41566(大白鲨) ( ) 信誉:100   
    学到不少东西,  其实 那2个参数用了快 2年了, 从来都是  2,3 从来没考虑过 他们会引起什么麻烦, 谢谢, 帖子先不结, 在学习学习 其他人的 意见
      

  6.   

    '事务使用的例子
    Private Sub Command1_Click()
        Dim cn As New ADODB.Connection    cn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=登陆用户名;Password=登录密码;Initial Catalog=数据库名;Data Source=服务器别名"    cn.Open
        '下面控制事务来保证数据的一致性
        
        cn.BeginTrans '开始事务
        On Error GoTo err
        cn.Execute ("update 表1 set ......") '更改表1
        cn.Execute ("update 表2 set ......") '更改表2
        cn.Execute ("update 表3 set ......") '更改表3
        cn.CommitTrans '提交事务
        cn.Close
        Set cn = Nothing
        Exit Sub
    err:
        cn.RollbackTrans '有错误的话回滚事务,恢复到修改前的状态
        cn.Close
        Set cn = Nothing
        MsgBox err.Description
    End Sub
      

  7.   

    谢谢 楼上的 哈哈 又学到了事务 :)  cn.CommitTrans '提交事务
    是不是 就相对于 Updata