Ich bekomme die Abfragen mit den joins nicht auf die Reihe.
Das kann ich mir vorstellen …
Dies ist mein Vorschlag (1. in Notepad geschrieben, also ziemlich buggy; 2. Oracle Syntax ich hoffe das Prinzip ist trotzdem verständlich)
select titel.a_id a_id, titel.text titel, name.text name, preis.text preis, k.name kategorie
from
anzeigen titel,
anzeigen name,
anzeigen preis,
anzeigen k,
kategorien,
felder f_titel,
felder f_name,
felder f_preis,
felder f_kategorie
where – join bedingungen
titel.a_id = name.a_id
and titel.a_id = preis.a_id
and titel.a_id = k.a_id
and kategorien.k_id = k.text
and titel.f_id = f_titel.f_id
and name.f_id = f_name.f_id
and preis.f_id = f_preis.f_id
and k.f_id = f_kategorie.f_id
and f_titel.item = ‚titel‘
and f_titel.name = ‚name‘
and f_titel.preis = ‚preis‘
and f_titel.kategorie = ‚kategorie‘
Die Joins auf die Felder Tabelle kann wegfallen, wenn man die ID’s, statt der Namen hart verdrahtet.
Und jetzt alles vergessen und ein vernünftiges Datenmodel bauen:
Was du da konstruierst ist eine Datenbank in der Datenbank.
Vorteil: Hochgradig flexibel … also in etwa genau so flexibel wie jede 08/15 Datenbank.
Nachteil: Selbst die einfachsten Abfragen werden zu Mörderjoins, die niemand schreiben oder debuggen möchte. Ganz abgesehen davon, dass die Performance katastrophal ist, und so moderne Erfindungen wie Indices, Foreign Keys und andere Constraints nicht benutzbar sind.
MfG
Jens