Code:
delKuQuery.SQL.Text :=' DELETE FROM Sendungsverfolgung WHERE Sendungsverfolgung_ID = '''+(Inttostr(AKunde.ID))+ ''';';
delKuQuery.SQL.Text :=' DELETE FROM Kunden WHERE Kunden_ID = '''+(Inttostr(AKunde.ID))+ ''';';
meintet ihr das so?
es funktioniert nicht... kriege eine fehlermeldung. Obwohl ich Sendungsverfolgung_ID lösche steht da, das es nicht geht weil beim Kunden immer noch ein FK zu kunden besteht.
so vielleicht? WHERE Sendungsverfolgung_ID = Kunden.Kunden_ID
???
SO sieht es insgesammt aus im Code:
Code:
procedure TDataconnect.deleteKunde(AKunde: TKunde);
var
delKuQuery: TIBOQuery;
delKuTransa: TIBOTransaction;
begin
delKuQuery:= TIBOQuery.Create(nil);
delKuQuery.IB_Connection:=FDataBase;
delKuTransa:= TIBOTransaction.Create(nil);
delKuTransa.IB_Connection:= FDataBase;
delKuQuery.SQL.Text :=' DELETE FROM Sendungsverfolgung WHERE Sendungsverfolgung_ID = '''+(Inttostr(AKunde.ID))+ ''';';
delKuQuery.SQL.Text :=' DELETE FROM Kunden WHERE Kunden_ID = '''+(Inttostr(AKunde.ID))+ ''';';
delKuQuery.ExecSQL();
delKuTransa.Commit;
//TRY FINALY EINBAUEN
delKuQuery.Free;
delKuTransa.Free;
end;