SQL Oracle-DB-Owner in SQL-Statement dynamisch ersetzen

looniverse

Newbie
Registriert
Nov. 2011
Beiträge
1
Hallo,

ich habe für verschiedene Mandanten immer die gleiche Tabellenstruktur in einer Datenbank gespeichert. Außerdem habe ich eine Kundentabelle, die wie folgt aussieht:

Tabelle CMS.KUNDEN Spalten ( ProdOwner, Name, Beginn ...)
Beispiele sind ( M100, Mandant1, 01.01.2011) , (M200, Mandant2, 01.04.2011) ...

Die Tabellen des Kunden haben jeweils den DB-Benutzer vorweggestellt, also M100.TABELLE1

Bislang habe ich bei mandantenübergreifenden Abfragen so gelöst:

SELECT 'Mandant1', Name, Datum, Flag1 FROM M100.TABELLE1
UNION
SELECT 'Mandant2', Name, Datum, Flag1 FROM M200.TABELLE1
...

Wie kann ich es clever lösen, dass alle Mandantennummern aus der Kundentabelle mit einer verschachtelten Abfrage durchlaufen werden.

Danke und Gruß

Looniverse
 
Du könntest Dir einen View anlegen (einfache Variante) oder eine Table Function nutzen. Ich weiß allerdings nicht, ob es da schon was fertiges gibt; ansonsten dürfte es aber eigentlich nicht so schwer zu implementieren sein.
 
Zurück
Oben