如题

解决方案 »

  1.   

    On Error GoTo ErrHandle    Dim CN   As New ADODB.Connection                '定义数据库的连接
      '  Dim Rs   As New ADODB.Recordset
        CN.ConnectionString = "Provider=sqloledb;Data Source=pmserver;Initial Catalog=northwind;User Id=sa;Password=sa;"
        CN.BeginTrans
        
        CN.Execute "insert into table1 ........"
        CN.Execute "insert into table2 ........"
        
        CN.CommitTrans
        Exit Sub
    ErrHandle:
        CN.RollbackTransEnd Sub
      

  2.   

    VB的事务处理包括以BeginTrans开始,以CommitTrans或Rollback结尾的多条数据库操作指令.事务处理除了能很好的保证数据库的完整性以外.同时能大大提高数据库批量更新的效率.这是因为如果数据库更新操作没有使用事务处理,则每次Update操作都会引起数据库写盘一次.使用事务处理后,更新只在内存缓冲区内进行,执行CommitTrans时才将所有修改一次写回到磁盘中.使用事务处理要注意一下几点:(1)事务处理要有很完善的错误检查机制;(2)因为VB在事务处理结束前对数据库使用了页面锁.所以在多用户环境中,如果事务被挂起,则其他用户将无法访问上锁的数据. 
      

  3.   

    ado事务开始事务
    BeginTrans
    回滚
    RollbackTrans
    提交事务
    CommitTrans
      

  4.   

    现在的问题是,我读文件的一行就要添加一条记录到数据库,就是ado没换以行就会改变一次,所以没办法实现