Baumstruktur aus 2 DB-Tabellen

Status
Nicht offen für weitere Antworten.
F

Flow24

Gast
Hallo zusammen,

bisher habe ich eine Baumstruktur immer rekursiv über eine DB-Tabelle erstellt. Die Datensätze
der DB-Tabelle besaßen jeweils eine eindeutige Nummer, eine Bezeichnung und eine ParentNummer, welche auf die
Nummer des jeweils übergeordneten Baumknoten-Datensatzes verwies.
Dann rief ich rekursiv eine Klasse "Knoten" auf, die die Baumknoten erstellte und sich selbst rekursiv aufrief.

Nun habe ich das Problem, dass sich meine Baumknoten-Datensätze in der Datenbank auf 2 Tabellen verteilen.
Die erste Tabelle "opBaumstruktur" ist ähnlich der oben genannten DB-Tabelle aufgebaut:

- ID (eindeutige Nummer der DB, z.B. 23)
- baumKz (eindeutiges Kennzeichen des Knoten, z.B. "hbg")
- baumBezeichnung (Klartext des Knoten, z.B. "Hamburg")
- baumParent (Verweis auf baumKz des übergeordneten Knotens)

In dieser Tabelle sind folgende Datensätze gespeichert:

- Root-Knoten: 1 firma firmenname [leer weil oberster Knoten]
- Niederlassungen: 2 hbg NL Hamburg firma
3 lpz NL Leipzig firma
4 mue NL München firma
- Kundenbetreuer: 5 meyer Hans Meyer hbg
6 schulze Ingo Schulze lpz

etc...

Die zweite Datenbank-Tabelle heißt "opKunden" und ist folgendermaßen aufgebaut:

- kundeID
- kundeNr
- kundeName
- kundePLZ
- kundeOrt
- kundeStrasse
- kundeTelefon
- kundeEmail
- kundeBetreuer

Wichtig sind für die Baumstruktur nur die Felder kundeNr, kundeName und kundeBetreuer. Die KundenNr soll das
eindeutige Kennzeichen des Kunden-Knotens sein. Der Name soll die Bezeichnung und der Betreuer soll auf das
eindeutige Kennzeichen des übergeordneten Betreuer-Knotens (siehe oben) sein.

Wie mache ich nun am besten aus den beiden DB-Tabellen eine Baumstruktur???

Gruß Flow24

[/code]
 

AlArenal

Top Contributor
Du musst nur wissen wie die Zuordnung zwischen Kunden und Standorten funktioniert. Das ist entweder 1->n oder n<->n für Standorte->Kunden.

Im ersten Fall brauchst du in Tabelle "opKunden" ein zusätzliches Feld mit dem Primärschlussel aus "opBaumstruktur". Im zweiten Fall bräuchtest du eine dritte Tabelle, die zwei Spalten enthält mit den Primärschlüsseln der beiden Tabellen.

Vom Algorithmus ändert sich grundlegend nichts, so du Kunden als Children der Standorte angezeigt haben willst. Du machst eben für jeden Knoten noch ne Abfrage auf die zugeordneten Kunden und erzeugst für diese Children, für die du den aktuellen Knoten als Parent setzt. Fertig.
 
F

Flow24

Gast
Die Kunden sollen die Children der Kundenbetreuer sein! Das Ganze ist so aufzubauen:

Firma (Root) --> Niederlassungen --> Kundenbetreuer --> Kunden des Betreuers

Der Schlüssel in der Zuordnung von Kunden --> Kundenbetreuer soll das Feld kundeBetreuer sein, in welchem ja bei jedem Kunden der Betreuer steht. Dieser Schlüssel findet sich wieder in der "Baumstruktur"-Tabelle im Feld baumKz der Betreuer-Knoten.
 

AlArenal

Top Contributor
Das funzt natürlich nur, wenn jeder Standort auch nur einen Kundenbetreuer hat und die Zuordnung Niederlassung->Kundenbetreuer->Kunde 1->1->n ist. In der Regel hat eine Niederlassung (egal welche Branche) aber mehrere Kundenbetreuer, d.h. NIederlassung->Kundenbetreuer => 1->n und Kundenbetreuer->Kunde => 1->n.

Das macht schonmal drei Tabellen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J ternäre(3) Baumstruktur Java Basics - Anfänger-Themen 2
W Baumstruktur Java Basics - Anfänger-Themen 8
S Baumstruktur: tiefsten Knoten finden Java Basics - Anfänger-Themen 3
Helgon Baumstruktur tiefe N erzeugen Java Basics - Anfänger-Themen 3
C ausgabe Baumstruktur java.io.File Java Basics - Anfänger-Themen 2
GetStringFrmObj Klassen Baumstruktur aus XMls erstellen, aber wie? Java Basics - Anfänger-Themen 15
S Baumstruktur zusätzlich ebenenweise repräsentieren Java Basics - Anfänger-Themen 9
S RBTree - baumstruktur darstellen Java Basics - Anfänger-Themen 7
A Baumstruktur Java Basics - Anfänger-Themen 6
D Baumstruktur erzeugen Java Basics - Anfänger-Themen 18
R Baumstruktur Java Basics - Anfänger-Themen 4
G Baumstruktur rekursiv durchlaufen Java Basics - Anfänger-Themen 2
G Einfügen von Elementen in Baumstruktur Java Basics - Anfänger-Themen 3
K Java Ausgabe als Baumstruktur Java Basics - Anfänger-Themen 8
M Baumstruktur durchgehen Java Basics - Anfänger-Themen 9
G Baumstruktur Java Basics - Anfänger-Themen 3
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
S OOP Java Eingabe in verschiedene Datenbank Tabellen eintragen Java Basics - Anfänger-Themen 7
berserkerdq2 sqllite in Java, wenn ich mache select count(*) ..., erhalte ich dann nur die gezählte Anzahl oder werden auch die Tabellen ausgegeben? Java Basics - Anfänger-Themen 2
M Tabellen- Daten laden Java Basics - Anfänger-Themen 2
J alternierendes Probing-Verfahren für Hash-Tabellen implementieren Java Basics - Anfänger-Themen 0
S Daten aus zwei Verschiedenen Tabellen in eine ArrayListe Java Basics - Anfänger-Themen 4
B Eclipse Tabellen Farbe ändern? Java Basics - Anfänger-Themen 2
G Best Practice Wie große "Tabellen" effizient durchsuchen und Daten händeln? Java Basics - Anfänger-Themen 15
B Sortieren und Filtern von Tabellen Java Basics - Anfänger-Themen 6
S Felder mit Variablen/Tabellen verknüpfen! Java Basics - Anfänger-Themen 3
S Tabellen vergleichen Java Basics - Anfänger-Themen 13
T Tabellen in AWT Java Basics - Anfänger-Themen 4
M SelectionListener bei zwei Tabellen Java Basics - Anfänger-Themen 3
T Tabellen-Daten in JSP Java Basics - Anfänger-Themen 4
C DB-Tabellen bei Programmstart erstellen Java Basics - Anfänger-Themen 3
G Datenbank Tabellen kopieren Java Basics - Anfänger-Themen 7
G Entität über mehrere Tabellen Java Basics - Anfänger-Themen 2
G [Hibernate] Constraints über mehrere Tabellen Java Basics - Anfänger-Themen 2
G Tabellen Java Basics - Anfänger-Themen 4
E 2 Tabellen mit swing.jtextpain Java Basics - Anfänger-Themen 3
M 5 MySql Tabellen in JTable - variable TableHeader? Java Basics - Anfänger-Themen 2
G Klassenbibliothek zur Erstellung von Tabellen? Java Basics - Anfänger-Themen 3
lomtas Spaltennamen von Tabellen Java Basics - Anfänger-Themen 2
S GUI "Klick-Tabellen", MouseOver Effekte und 2D-Arr Java Basics - Anfänger-Themen 11
B hsqldb (beziehungen zw. Tabellen) Java Basics - Anfänger-Themen 8
P Tabellen Object Java Basics - Anfänger-Themen 3
D Tabellen erstellen/formatieren in Java Java Basics - Anfänger-Themen 4
G fulltext Tabellen Java Basics - Anfänger-Themen 5
P Verknüpfung von Tabellen Java Basics - Anfänger-Themen 7
S Tabellen kopieren in MySQL Java Basics - Anfänger-Themen 6
R Tabellen Java Basics - Anfänger-Themen 5
M dynamische tabellen Java Basics - Anfänger-Themen 2
K Hintergrundfarbe einer Tabellen-Zelle verändern Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben