我用odbc连接一个access数据库,用ado的connection对象的execute方法执行几条sql语句插入记录,为什么最后一条没有插进去,而且如果只插入一条记录也不能成功,如果调用close方法则可成功.难道一定要调用close方法么?

解决方案 »

  1.   

    要提交try
    {
    pConnection->BeginTrans(); pConnection->Execute(_bstr_t(csSQL),NULL,adExecuteNoRecords);
    pConnection->CommitTrans(); 
    }
    catch(...)
    {
    GetWorkConnectionPtr()->RollbackTrans(); 
    }
      

  2.   

    try
    {
    pConnection->BeginTrans(); pConnection->Execute(_bstr_t(csSQL),NULL,adExecuteNoRecords);
    pConnection->CommitTrans(); 
    }
    catch(...)
    {
    pConnection->RollbackTrans(); 
    }
      

  3.   

    try
    {
    pConnection->BeginTrans(); pConnection->Execute(_bstr_t(csSQL),NULL,adExecuteNoRecords);
    pConnection->CommitTrans(); 
    }
    catch(...)
    {
    pConnection->RollbackTrans(); 
    }