Moin,
ich hab ein Denkproblem für meinen Datenbankzugriff, vielleicht kann ja einer helfen.
Ich habe zwei Relationen, die ich über eine dritte miteinander verknüpfen möchte (n:m-Beziehung). Die Schemata sehen vom Prinzip her so aus (die Feldnamen sind anders, aber das ist ja hier egal):
EINS(nummer_eins, zeitstempel, ...)
ZWEI(nummer_zwei, ...)
REL(nummer_eins, zeitstempel, nummer_zwei)
Relation ZWEI repräsentiert einen Baum, EINS eine Liste. Die Verknüpfungen sind aufgrund von Programmierfehlern teilweise mit, teilweise ohne den Wurzelknoten gespeichert (nummer_zwei hat den Wert 1 für Wurzel). Nun suche ich eine Möglichkeit, dort, wo genau diese Verknüpfung fehlt, diese nachzutragen, aber nur dort, wo sonst Verknüpfungen existieren.
Mein Versuch war, dies über "SELECT DISTINCT nummer_eins, zeitstempel, nummer_zwei WHERE nummer_zwei <> 1" zu machen - ich nahm an, dass ich dann je einen Datensatz für diejenigen Verknüpfungen bekomme, wo die Wurzel fehlt. Das scheint aber nicht zu stimmen, die Versuche, eine Wurzelverknüpfung hinzuzufügen, scheitern.
Hat jemand eine andere Idee, wie man das hinbekommen könnte?
ich hab ein Denkproblem für meinen Datenbankzugriff, vielleicht kann ja einer helfen.
Ich habe zwei Relationen, die ich über eine dritte miteinander verknüpfen möchte (n:m-Beziehung). Die Schemata sehen vom Prinzip her so aus (die Feldnamen sind anders, aber das ist ja hier egal):
EINS(nummer_eins, zeitstempel, ...)
ZWEI(nummer_zwei, ...)
REL(nummer_eins, zeitstempel, nummer_zwei)
Relation ZWEI repräsentiert einen Baum, EINS eine Liste. Die Verknüpfungen sind aufgrund von Programmierfehlern teilweise mit, teilweise ohne den Wurzelknoten gespeichert (nummer_zwei hat den Wert 1 für Wurzel). Nun suche ich eine Möglichkeit, dort, wo genau diese Verknüpfung fehlt, diese nachzutragen, aber nur dort, wo sonst Verknüpfungen existieren.
Mein Versuch war, dies über "SELECT DISTINCT nummer_eins, zeitstempel, nummer_zwei WHERE nummer_zwei <> 1" zu machen - ich nahm an, dass ich dann je einen Datensatz für diejenigen Verknüpfungen bekomme, wo die Wurzel fehlt. Das scheint aber nicht zu stimmen, die Versuche, eine Wurzelverknüpfung hinzuzufügen, scheitern.
Hat jemand eine andere Idee, wie man das hinbekommen könnte?