Ausnahmslos alle Tabellen aus einer Datenbank auswählen

Hallo,

kurz und knapp:
Wie kann ich alle Tabellen aus einer Datenbank auswählen, ohne alle aufschreiben und mit einem Komma voneinander trennen zu müssen?

Normalerweise wäre es ja so:
SELECT * FROM tabelle1, tabelle2, tabelle3, tabelle4, tabelle5, tabelle6

Das würde nicht nur ewig dauern, sondern wäre auch nicht mehr dynamisch.

Hintergrund:
Habe eine Datenbank, wo einige Tabellen vorhanden sind, wovon welche aber auch nicht auf Dauer existieren.
Jetzt jedes Mal das manuell zu ändern, wäre umständlich und es von daher besser, wenn dieses dynamisch bleibt.

Mit

show tables;

kannst Du dir die Liste aller Tabellen einer Datenbank ausgeben lassen.

Das klingt aber nicht grade nach einem guten Datenbankdesign :smiley: Darf man mal fragen, was du umsetzen willst? Vielelicht gibt es da eine bessere Lösung. Denn ein Datenbankdesign sollte stabil sein und nicht in der Anzahl seiner tabellen variieren.

Eine Übergangslösung. :stuck_out_tongue: Frag nicht warum. Ist noch der selbe Script, den ich in der Jobbörse in Auftrag gab.

Aber ich habe nun eine bessere Idee, schätze ich.

Irgendwann werde ich das Problem angehen, aber vorerst so:

Ich habe 20 Künstler → 20 Tabellen.
Wollte nun „aktuellste Songs“, etc. schreiben.
Dass alle Songs in diesem Monat oder die letzten 30 Songs, wie auch immer, ausgegeben werden.

Ich lasse am besten alle neuen Songs in eine neue Tabelle eintragen und dann muss auch nur noch diese ausgelesen werden. Fertig.

Mein Script liest einen angegebenen Ordner aus und bisher nicht existierende Dateien schreibt er auch automatisch in die Datenbank. (INSERT INTO).
Und jetzt habe ich einen zusätzlichen Query, der in die zweite Tabelle schreibt, wo alle Downloads von 20 Künstlern (20 Tabellen) da eingetragen werden.

Da muss ich nun überlegen, wie ich das mit dem Limit mache.
Wie viele Songs ausgegeben werden sollen, kriege ich ja mit LIMIT hin, aber die alten Datensätze bleiben ja leider dann noch in der Tabelle.
Wie könnte ich diese automatisch überschreiben lassen?

Äusserst ungeschicktes Tabellendesign, die Künstler auf 20 Tabellen zu verteilen.
Neuer Vorschlag:

Tabelle 1 (kuenstler)
Künstler_id (z.B. Autowert) | Name …

Tabelle2 (titel)
Titel_id (z.B Autowert) | Künstler_id(aus Tabelle1) | Titel | Erscheinungsjahr | Erscheingsmonat | Erscheinungstag | …

Jetzt kannst du sortieren und ausgeben wie du willst

Ich weiß es doch.
Das kann ich jetzt noch nicht machen. Habe noch andere Scripte, die miteinander „verknüpft“ sind. Dafür muss ich mir einige Monate Zeit nehmen, weil auch das ACP und dazu ein kleines CMS System dazu geschrieben werden muss.
Aber für die nächsten Wochen muss ich das so aushalten.