endu hat geschrieben:ok, ich hätte nicht Select * schreiben sollen. Ich wollte das Beispiel vereinfachen um das Problem besser demonstrieren zu können...
ok
Letzlich kann man es sich so vorstellen, 4 (zukünftig evtl. weitere) Abteilungen haben jeweils eine eigene Tabelle mit identischen Feldnamen. Nun kommt eine 5te Abteilung ins Spiel die Zugriff auf alle Daten benötigt.
Auch schreibend? Ansonsten könnte man das evtl. über einen view lösen, der mit unions alles zusammenflantscht?
Ich weiß selbst das das kein schönes Datenbankmodell ist, aber das kann ich (leider) nicht beeinflussen.
Ja, das ist sicherlich schade. Aber manchmal gibt's eben gewachsene Strukturen ...
Mir fällt grad ein, dass man das mit dem view evtl. aber als Lösung für eine Migration zu einem besseren DB-Modell nutzen könnte:
1.) Es wird eine neue Tabelle angelegt, die um ein Feld "AbteilungsNr." o.ä. erweitert wird.
2.) Man migriert die Daten einfach in die neue Tabelle
3.) Man legt 4 views an, die genau so heißen, wie die ehemaligen Tabellen und eben nur deren Inhalte rausfiltert (where AbteilungsNr = x)
Damit sollten die "alten" Applikationen weiter lauffähig sein, man hat aber als Basis nun ein besseres DB-Design.
Wobei man einen View ja nur lesend nutzen kann fällt mir grad auf. Mist! Dann geht's natürlich nicht so einfach ...
*seufz* gewachsene Strukturen sind manchmal so nervig
