Hallo Experten!
Bei meinem Datenbankdesign komme ich nicht weiter. Folgendermaßen sieht es aus:
Ich habe eine Tabelle 't_object', die eben einige Spalten hat, u.a. auch die Spalte 'properties'. In dieser Spalte properties stehen derzeit mehrere Werte, die von einem Komma getrennt werden, z.B. '5,6,13'. Aufgelöst werden diese Werde dann durch eine Tabelle names 't_object_properties', bei der die id eben den Werten aus der Liste entspricht.
Jetzt habe ich mal gehört, dass man nicht mehrere Werte in einer Spalte haben sollte, also keine von Kommas getrennte Liste. Um das zu umgehen, müsste ich der Tabelle 't_objects' viele neue Spalten hinzufügen und die die Spalte 'properties' entfernen. Die ganzen neuen Spalten würden dann nur einen bool'schen Wert enthalten, der eben angibt, ob diese Eigenschaft vorhanden ist, oder eben nicht.
Meine Frage ist nun, was aus Perfomancegründen die bessere Wahl ist.
1. So wie bisher, mehrere Werte in einer Spalte und diese mit Kommas getrennt. Aufgelöst werden diese Werte durch eine separate Tabelle.
2. Viele zusätzliche Spalten in der Tabelle 't_object'. (Dabei handelt es sich um ca. 30 zusätzliche Spalten, weil es eben ca. 30 verschiedene Eigenschaften gibt, die ein Objekt haben kann, oder nicht.
Was empfiehlt ihr mir?
Liebe Grüße,
Dario
Bei meinem Datenbankdesign komme ich nicht weiter. Folgendermaßen sieht es aus:
Ich habe eine Tabelle 't_object', die eben einige Spalten hat, u.a. auch die Spalte 'properties'. In dieser Spalte properties stehen derzeit mehrere Werte, die von einem Komma getrennt werden, z.B. '5,6,13'. Aufgelöst werden diese Werde dann durch eine Tabelle names 't_object_properties', bei der die id eben den Werten aus der Liste entspricht.
Jetzt habe ich mal gehört, dass man nicht mehrere Werte in einer Spalte haben sollte, also keine von Kommas getrennte Liste. Um das zu umgehen, müsste ich der Tabelle 't_objects' viele neue Spalten hinzufügen und die die Spalte 'properties' entfernen. Die ganzen neuen Spalten würden dann nur einen bool'schen Wert enthalten, der eben angibt, ob diese Eigenschaft vorhanden ist, oder eben nicht.
Meine Frage ist nun, was aus Perfomancegründen die bessere Wahl ist.
1. So wie bisher, mehrere Werte in einer Spalte und diese mit Kommas getrennt. Aufgelöst werden diese Werte durch eine separate Tabelle.
2. Viele zusätzliche Spalten in der Tabelle 't_object'. (Dabei handelt es sich um ca. 30 zusätzliche Spalten, weil es eben ca. 30 verschiedene Eigenschaften gibt, die ein Objekt haben kann, oder nicht.
Was empfiehlt ihr mir?
Liebe Grüße,
Dario