AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken FreePascal Können zwei Tabellen gegenseitig zu einander in Beziehung stehen?
Thema durchsuchen
Ansicht
Themen-Optionen

Können zwei Tabellen gegenseitig zu einander in Beziehung stehen?

Ein Thema von AlexII · begonnen am 12. Mai 2015 · letzter Beitrag vom 14. Mai 2015
 
Perlsau
(Gast)

n/a Beiträge
 
#10

AW: Können zwei Tabellen gegenseitig zu einander in Beziehung stehen?

  Alt 12. Mai 2015, 19:46
Nun ist es so, mehrere Alarme können auf einen Job verweisen dazu der FK. Und den FK in der Tabelle Job brauche ich um alle Alarme aus der Tabelle Alarm zu löschen falls ein Job gelöscht wird.
Mal ganz langsam: Es gibt eine Job-Tabelle, die hat einen PK (Primary Key). Und es gibt eine Termin-Tabelle, da gibt es neben der Spalte DATUM ebenfalls einen PK. Nun möchtest du notieren, daß ein Job mehrere Termine haben kann, ein Termin aber auch mehrere Jobs. Dafür erstellst du nun eine dritte Tabelle, die meinetwegen JOB_TERMIN heißt, spendierst ihr einen PK und richtest daneben noch die Spalten Id_Job und Id_Termin ein. In diese dritte Tabelle schreibst du nun deine Zuweisungen:
Delphi-Quellcode:
Function NeuerTermin(Const Id_Job, Id_Termin : Integer) : Boolean;
begin
  Id_Job := Query_Job.FieldByName('ID_JOB').AsInteger;
  Id_Termin := Query_Termin.FieldByName('ID_TERMIN').AsInteger;
  If Not Query_Job_Termin.Locate('ID_JOB;ID_TERMIN';VarArrayOf([Id_Job,Id_Termin]),[]) Then
  Begin
    Query_Job_Termin.Append;
    Query_Job_Termin.FieldByName('ID_JOB').AsInteger := Id_Job;
    Query_Job_Termin.FieldByName('ID_TERMIN').AsInteger := Id_Termin;
    Query_Job_Termin.Post;
    Result := True;
  End Else Result := False;
end;
Auf diese Weise kannst du nun jedem Termin mehrere Jobs zuweisen und jedem Job mehrere Termine. Wenn du nun einen Job löschen willst, dann merkst du dir dessen Id und löschst aus der Tabelle JOB_TERMIN alle Einträge, die sich auf diese Job-Id beziehen.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz