当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

 ·初学者,谢谢    »显示摘要«
    摘要: 大家好!我最近才接触c++ builder,请问它和vc++有什么区别。 ......
 ·在聊天室里如何得到对方的ip    »显示摘要«
    摘要: 有什么好的软件可以在聊天室里得到对方的ip ? ......


大虾关于vb操作数据库的事务回滚的例子,在线等待

请教大虾,谁有关于vb操作数据库的事务回滚的例子

NO.1   作者: Leftie

private   sub   command1_click()  
  on   error   goto   err_proc  
  conn.begintrans         开始事务  
          conn.execute   "   insert   into   ..."  
          conn.execute   "   update   ..."  
          conn.execute   "   delete   from   ..."  
   
  conn.committrans       提交事务  
          exit   sub  
  错误处理  
  Err_Proc:  
          msgbox   "操作失败!",48,"提示"  
          conn.rollbacktrans         回滚事务  
          exit   sub  
  end   sub  
         
 

NO.2   作者: rexyudl

conn.begintrans  
  conn.committrans    
  conn.rollbacktrans          
  MSDN上面有详细解释啊!

NO.3   作者: IwantFlay

cn.begintrans  
  on   error   goto   errDeal  
   
    strSql:=.......  
    cn.execute(strSql)  
     
    strSql:=..................  
    cn.execute(strSql)  
   
    cn.committrans  
   
    exit   sub  
  errDeal:  
    cn.rollbacktrans  
 

NO.4   作者: loveerror

你只要在系统中使用事务,当操作失败之后,自然就会出现回滚呀。

NO.5   作者: gxhwq

Leftie(Leftie)   已经说得挺好的啦。  
  开始事务:begintrans  
  提交事务:committrans    
  回滚事务:rollbacktrans

NO.6   作者: chenyu5188

同意:   Leftie(Leftie)的。

NO.7   作者: wamlaw

private   sub   command1_click()  
  on   error   goto   err_proc  
  conn.begintrans         开始事务  
          conn.execute   "   insert   into   ..."  
          conn.execute   "   update   ..."  
          conn.execute   "   delete   from   ..."  
   
  conn.committrans       提交事务  
          exit   sub  
  错误处理  
  Err_Proc:  
          msgbox   "操作失败!",48,"提示"  
          conn.rollbacktrans         回滚事务  
          exit   sub  
  end   sub  
         
   
 

NO.8   作者: chenyu5188

示例:  
  更改数据库的   Titles   表中所有心理学书籍的书籍类型。在   BeginTrans   方法启动事务将所有对   Titles   表的更改隔离后,CommitTrans   方法将保存更改。可使用   Rollback   方法撤销用   Update   方法保存的更改。  
   
  Public   Sub   BeginTransX()  
   
        Dim   cnn1   As   ADODB.Connection  
        Dim   rstTitles   As   ADODB.Recordset  
        Dim   strCnn   As   String  
        Dim   strTitle   As   String  
        Dim   strMessage   As   String  
   
          打开连接。  
              strCnn   =   "Provider=sqloledb;"   &   _  
              "Data   Source=srv;Initial   Catalog=pubs;User   Id=sa;Password=;   "  
        Set   cnn1   =   New   ADODB.Connection  
        cnn1.Open   strCnn  
   
          打开   Titles   表。  
        Set   rstTitles   =   New   ADODB.Recordset  
        rstTitles.CursorType   =   adOpenDynamic  
        rstTitles.LockType   =   adLockPessimistic  
        rstTitles.Open   "titles",   cnn1,   ,   ,   adCmdTable  
         
        rstTitles.MoveFirst  
        cnn1.BeginTrans  
   
          在记录集中循环并询问是否想要更改指定标题的类型。  
        Do   Until   rstTitles.EOF  
              If   Trim(rstTitles!Type)   =   "psychology"   Then  
                    strTitle   =   rstTitles!Title  
                    strMessage   =   "Title:   "   &   strTitle   &   vbCr   &   _  
                    "Change   type   to   self   help?"  
   
                      更改指定雇员的标题。  
                    If   MsgBox(strMessage,   vbYesNo)   =   vbYes   Then  
                          rstTitles!Type   =   "self_help"  
                          rstTitles.Update  
                    End   If  
              End   If  
   
                    rstTitles.MoveNext  
        Loop  
   
          询问用户是否想提交以上所做的全部更改。  
        If   MsgBox("Save   all   changes?",   vbYesNo)   =   vbYes   Then  
              cnn1.CommitTrans  
        Else  
              cnn1.RollbackTrans  
        End   If  
   
          打印记录集中的当前数据。  
        rstTitles.Requery  
        rstTitles.MoveFirst  
        Do   While   Not   rstTitles.EOF  
              Debug.Print   rstTitles!Title   &   "   -   "   &   rstTitles!Type  
              rstTitles.MoveNext  
        Loop  
   
          恢复原始数据,因为这只是演示。  
        rstTitles.MoveFirst  
        Do   Until   rstTitles.EOF  
              If   Trim(rstTitles!Type)   =   "self_help"   Then  
                    rstTitles!Type   =   "psychology"  
                    rstTitles.Update  
              End   If  
              rstTitles.MoveNext  
        Loop  
   
        rstTitles.Close  
        cnn1.Close  
   
  End   Sub  
   
 


 ·linux版的delphi有没有    »显示摘要«
    摘要: linux版的delphi有没有 ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE