Ilja: Fragen zur Struktur einer DB

Beitrag lesen

yo,

die idee mit den eigenen tabellen für jeden user oder mehrer spalten für jede liste der user ganz schnell verwerfen und nie wieder rausholen. ;-)

frank hat es schon angesprochen, du musst geeignete objekttabellen und beziehungstabellen anlegen, die genau das abbilden können, was du willst. es macht wenig sind, tabellen oder neue spalten anzulegen, wenn ein neuer user oder eine neue liste erstellt wird. das wäre ganz ganz grausam.....

auch wenn es sich wiederholt, will ich es noch mal darlegen, was du brauchst:

  • Tabelle User, nimmt alle Userdaten auf. die tabelle liegt quasi schon vor.

  • Tabelle Liste, nimmt den Listenname und die id des Users auf, dem sie gehört, sprich ein Fremdschlüssel, der auf die User tabelle zeigt. notfalls noch andere daten, die den listen-datensätzen zugeordnet werden sollen, wie zum beispiel das datum, wann die liste erstellst wurde, etc.

  • Tabelle All_Data (schrecklicher name), die tabelle bleibt so bestehen, wie sie ist, liegt also auch schon vor.

  • Tabelle Liste_Data, diese Tabelle hat zwei fremdschlüssel, nämlich den der tabelle liste und den der tabelle all_data. somit kannst du jedem user eine belibige anzahl von listen zuordnen, die beliebig viele datensätze aus alll_data aufnehmen können.

thats it, wenn man will, kann man der beziehungstabelle Liste_Data noch einen eigenen primary key geben oder aber einen zusammengestzten  aus deb beiden fremdschlüsseln, beides ist eine gute lösung.

Ilja