如何同时删除两个表中的数据??我利用鼠标选择listview里的一行,然后删除。我的代码如下:
     Query3.SQL.Clear;
     Query5.SQL.Clear;
     Query3.SQL.Add('delete from car where car_num='''+ListView2.Items[i].Caption+'''');
     Query5.SQL.Add('delete from carpostion where car_num='''+ListView2.Items[i].Caption+'''');
     ListView2.Items.Delete(i);
     Query3.ExecSQL;
     Query5.ExecSQL;
可我一执行就说冲突,我的另外一个表carpostion在另外一个form里面显示,在当前这个form中不显示。请问如何解决?错误在哪儿?

解决方案 »

  1.   

    是不是那个query  的requestlive  设成false  了?
      

  2.   

    Query3.SQL.Clear;
    Query3.SQL.Add('delete from car where car_num='''+ListView2.Items[i].Caption+'''');
    Query3.ExecSQL;
    Query5.SQL.Clear;  
    Query5.SQL.Add('delete from carpostion where car_num='''+ListView2.Items[i].Caption+'''');
    Query5.ExecSQL;
    ListView2.Items.Delete(i);
         
         
      

  3.   

    你也可以在SQL中做成关系。把你要删除的表做为主表。删除时SQL自动删除外键表的行
      

  4.   

    如何在sql中做关系?
    指教一下,最好详细点,我不会
      

  5.   

    Query3.SQL.Close;    
         Query5.SQL.Close;
         Query3.SQL.Clear;
         Query5.SQL.Clear;
         Query3.SQL.Add('delete from car where car_num='''+ListView2.Items[i].Caption+'''');
         Query5.SQL.Add('delete from carpostion where car_num='''+ListView2.Items[i].Caption+'''');
         ListView2.Items.Delete(i);
         Query3.ExecSQL;
         Query5.ExecSQL;
      

  6.   

    你在关系图上点击新建关系图。然后把你要的表加进去。按下一步然后把这两个表的类型一至含义一样的两个主键。拖动第一个表的键到第二个表的键上就行了。不一定为主键但这样关联以后自动创建为UNIQUE