Einzelnen Beitrag anzeigen

Benutzerbild von Billa
Billa

Registriert seit: 11. Aug 2003
237 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#11

Re: Datenbank mit Dynamischen Spalten

  Alt 11. Jul 2008, 10:35
Ich denke mir das so:

Tabelle1 (die "Zeilen" Deiner Matrix)

T1_ID
T1_Feld1
T1_Feld2 (eben alle Felder, die immer vorkommen)


Tabelle2 (die "Spalten"..)
T2_ID
T2_FK_T1 (Verweis auf die Zeile, z.B. mit Foreign Key Constraint auf T1_ID)
T2_Wert

jetzt kannst Du in "zwei Dimensionen" beliebige Zeilen und Spalten anlegen.
Wenn Du eine neue Spalte brauchst, legst Du also einfach statt neuer Spalten
in T1 neue Sätze in Tabelle2 an. Pro Zeile aus Tabelle 1 ein neuer Satz in
Tabelle2 mit der entsprechenden Zeilen-ID (T1_ID) der Zeile in T2_FK_T1.

Es existieren also in Tabelle2 AnzahlZeilen*AnzahlSpalten Sätze...

Damit hast Du Änderungen an der Struktur durch einfache Satzoperationen ersetzt.
Absolut flexibel. Wenn Du noch eine dritte Dimension benötigst, gibt es halt nach
gleichem Schema eine dritte Tabelle.... (Stichwort Normalisierung)
Gruß Billa

Nur weil ich paranoid bin, heißt das nicht, daß die da draussen nicht hinter mir her sind....
  Mit Zitat antworten Zitat