Rolf B: MYSQLI Datenbank mit komplexeren Einträgen?

Beitrag lesen

Hallo Rudi,

die "Eindimensionalität" einer relationalen Datenbank ist volle Absicht. SQL würde ohne diese Eigenschaft nicht sinnvoll funktionieren. Bzw. es kommt dann später im Betrieb der Datenbank zu Problemen, weil Abfragen nicht performant sind oder Updates umständlich werden.

Wenn das prinzipiell keine schlechte Idee ist

Doch. Ist es. Das Stichwort, was Du brauchst, heißt "Normalisierung". Dazu gibt's einiges in der Wikipedia oder auch in SQL Büchern.

Eine gute, normalisierte Datenbank zu designen ist nichts, was ich Dir in einem Forenbeitrag erklären kann, das ist zu umfangreich.

Deine Erfordernisse dürften jedenfalls zu mehreren Tabellen führen. Um ein Modellierungsbeispiel zu machen, ist deine Anfrage zu knapp, da fehlt es mir an Kontext.

Neuere Datenbanken kennen JSON Typen oder XML Typen und bieten an, eine komplexe Struktur als JSON- oder XML-String zu speichern. Sie bieten auch SQL Erweiterungen an, um darin zu suchen. Ich habe aber keine Ahnung, wie performant das ist und ob solche Spalten indexierbar sind. Sind sie es nicht, hast Du bei kleinen Tabellen und/oder wenig Zugriffen eine prima Leistung in der DB und bist happy. Und irgendwann schlägt es um, dann passt nicht mehr alles in den RAM des Servers und die DB ist von jetzt auf gleich schneckenlangsam.

Rolf

--
sumpsi - posui - obstruxi