Neelix, jetzt blähe den Thread doch nicht unnötig auf. 8) Der wird sich schon wieder melden. Wie es aussieht herrscht allerdings immer noch Unklarheit, was unique und Index überhaupt ist.
Ein unique Index dient einzig und alleine dazu, zu verhindern, daß doppelte Werte in der
DB vorkommen können. Manche denken, ein Index sei nur dazu da, eine Suche in der
DB zu beschleunigen. So ist es aber nicht. Er dient auuch dazu, die Daten selber in Ordnung zu halten. Insbesondere ein unique Index ist für so was da.
Das alles hat aber wieder nichts damit zu tun, einen eindeutigen Datensatz aus der
DB zu erhalten ! Dazu brauche ich
keinen Index ! Ich kann auch ohne Index einen eindeutigen Wert
erhalten (nicht speichern !!), wenn ich nur ausreichende viele Felder so mit WHERE verknüpfe, daß die Abfrage eindeutig wird !! Das kann ich auch in meinem Delphi-Programmm machen.
Darauf will er wohl hinaus. Und wer den Source etwas genauer betrachtet, der wird feststellen daß ein INNER JOIN verwendet wird, der wiederum seine Daten aus einem andern INNER JOIN erhält. Als allererstes würde ich versuchen, das etwas zu vereinfachen und mal über stored Procedures nachdenken.