比如执行这样的操作.
INSERT INTO TABLE1
.
.
.
.
.
INSERT INTO TABLE8
当中间的某个INSERT 出错的时候我们一般怎么处理?

解决方案 »

  1.   

    将dataset的CachedUpdates设置为true;
    try
      insert
      applyupdates
    except
      cancelupdates;
    end;不过我不知道你用sql语句更新的时候可不可以,但是用append,post的时候肯定没有问题
      

  2.   

    写事件例外处理呀!
    try
    ...
    except
    ...
    end.
    有问题请发信息到我的E-mail:[email protected]
      

  3.   

    MySql的4版本已经支持事务了,帅哥
      

  4.   

    307(冲击波)
    try
      insert into table1......;
    except
      showmessage('F');
      exit;
    end;try
      insert into table2.....
    except
      delete from table1..... ???这样不可以啊,如果用DELET的话又要用TRY呀....
      exit;
    end;
     DainelLee(Iinexperience) 
    嘻~.我是帅哥.
      

  5.   

    首先,很少数据库是不支持事务处理的,如果使用事务处理,可以这样写:
    try
      if ADOConnection.InTransaction then
        ADOConnection.RollbackTrans;
      ADOConnection.BeginTrans;
      INSERT INTO TABLE1
      .
      .
      .
      .
      .
      INSERT INTO TABLE8
      ADOConnection.CommitTrans;
      except
         ADOConnection.RollbackTrans;
      end;如果你确实要不用事务处理的话,可以这样做:try
      INSERT INTO TABLE1
      .
      .
      .
      .
      .
      INSERT INTO TABLE8
      UpdateBatch;
    except
      cancelupdates;
    end;我是帅哥,要给我多点分。
      

  6.   

    帅哥,还提示 你一点...
    MySql的启动有几种模式,要选mysqld-max或mysqld-max-nt
    这样才能支持事务.......
    不说了,说出来大家都知道了........
      

  7.   

    靓M. DainelLee(Iinexperience)
    你说的我不知道.
    没见过有几种方式启动.
    Wally_wu(不想再写代码) try
      INSERT INTO TABLE1
      .
      .
      .
      .
      .
      INSERT INTO TABLE8
      UpdateBatch; ???????????????
    except
      cancelupdates; ?????????????
    end;
    问号处是什么意思呀?帅哥
      

  8.   

    我的MYSQL不支持缓存更新出现错误:Method 'cancelupdates' not supported by automation object
      

  9.   

    DainelLee(Iinexperience)
    你说的MYSQL4版本哪有下载?