Daniel: Joins mit gleichen Spaltennamen

Beitrag lesen

Hi!

kleiner Nachtrag:

Wobei ich es nicht so ganz verstehe, denn wenn Du Joins verwendest, brauchst Du zwangsläufig Wissen über die Datrenstruktur, das geht nicht 100%ig dynamisch, da Du ja wissen musst worüber Du die(welche) Tabellen verknüpfen kannst.

Ich denke genau hier liegt der Knackpunkt. Entweder Du schreibst ein Tool um eine DB zu verwalten, dann darfst Du aber nicht solche Joins machen und dem Anwender zusammenhängende Tabellen vorgaukeln, sondern Zugriff auf einzelnde Tabellen gewähren, dann hast Du auch keine Probleme.

Mach ich ja nicht.

Nur hast Du das vermutlich nicht vor, sondern willst eine Art Verwaltungsfunktion für eine spezielle Anwendung schreiben. Und eben das ist der Unterschied, das ist dann kein reines DB-Verwaltungs-Tool mehr, sondern Teil einer speziellen Anwendung. Und hier ziehen dann auch wieder alle Argumente von Cheatah, Daniela etc.
Das was Du vorhast würde sicher sehr unsauber, da es IMHO nicht konsequent ist sondern mit "schmutzigen Workarounds" probiert Dir Deinen Programmier-Aufwand zu verkleinern.

Hmm, sicher der Programmieraufwand ist geringer, der Ergebnis ist das gleiche, die Geschwindigkeit bei kleinen Abfrage allerdings schlechter, bei großen Abfragen höher.

Ich würde mich evtl. sogar noch weiter aus dem Fenster lehnen und behaupten das DB-Design ist schlecht wenn Du mit solchen Tricks wie dynamischen Tabellen arbeiten musst. Das ist schon bei einzelnen Tabellen schlecht, bei Tabellen-Verknüpfungen IMHO fast eine Garantie für spätere Probleme. Aber dazu kenne ich Deine Anwendung nicht gut genug.

Nun ja ich denke nicht, dass das DB-Design schlecht ist (ich kann es euch leider nicht zeigen, weil es was Firmeninternes ist), aber was gefordert ist, ist etwas dynamisches Tabelle hinzufügen, Config ändern und das wars... der Rest wird wie gesagt dynamisch erzeugt, wie bearbeiten und hinzufügen etc. Die Verknüpfung geht nur über eine ID. Diese ID muss in den anderen Tabellen auch vorhanden sein, deshalb kann ich joinen. Sonst sind allerdings alle Spalten interessant (und das immer), deshalb werden sie selektiert.

Bis dann

Daniel