我要删除标识为id的数据,把该数据相关信息都删除,共有6个表,请问如何删除?我依次删除每个表,但报错说:查询过于复杂。请问为什么?

解决方案 »

  1.   

    begintrans
    try
      delete from table1 where...
      delete from table2 where...
      delete from table3 where...
      delete from table4 where...
      delete from table5 where...
      delete from table6 where...
      committrans
    except
      rollbacktrans
    end;
      

  2.   

    adoconnection1.begintrans;
    adoquery1.close;
    try
      adoquery1.sql.text:='delete from table1 where...'
      adoquery1.execsql;
      adoquery1.sql.text:='delete from table2 where...'
      adoquery1.execsql;
      adoquery1.sql.text:='delete from table3 where...'
      adoquery1.execsql;
      adoquery1.sql.text:='delete from table4 where...'
      adoquery1.execsql;
      adoquery1.sql.text:='delete from table5 where...'
      adoquery1.execsql;
      adoquery1.sql.text:='delete from table6 where...'
      adoquery1.execsql;
      adoconnection.committrans;
    except
      adoconnection.rollbacktrans;
    end;
      

  3.   

    同意 回复人: mastersky(浪) ( ) 信誉:97