你的问题可能出在BeginTrans上,你是用的SQL SERVER数据库吧,我在ACCESS库里用你的代码时除了不能用BeginTrans外,没有出现任何问题,而且,你在每次替换时已经update了,还能回滚吗?你可以试试不用BeginTrans时,会不会出错。

解决方案 »

  1.   

    你的事务错了,应该是CommitTrans后,才UPDATE数据库文件,这样才行,把代码改一下吧
      

  2.   

    事务错了也不应该会删除了所有记录啊!我也是看不出代码是什么错误。
    关注ING。
      

  3.   

    数据库为server2000,数据的确都被删光了,不知何故!!!
      

  4.   

    If MsgBox("Do you really save changed data?", vbYesNo) = vbYes Then
            cnn.CommitTrans
        
       rst.update          '这样的话,事物处理不是没有什么意义了吗?
    Else
            cnn.RollbackTrans
     End If
        
      

  5.   

    CommitTrans就是在update之后的,否则事务处理还有什么意义啊。
      

  6.   

    将:
    rst.Open "Titles", cnn, adOpenKeyset, adLockPessimistic, adCmdTable
    换为:
    rst.Open "Titles", cnn, adOpenDynamic, adLockPessimistic, adCmdTable 
    试试看。