Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Mysql:Ist es praktisch, für die Beiträge jedes Benutzers eine separate Tabelle zu erstellen?

Sie sollten Benutzer-IDs zu Shops/Beiträgen hinzufügen. Es gibt zahlreiche Gründe, warum Sie keine separaten Tabellen für jeden Benutzer haben möchten:

  • MySQL wurde entwickelt, um Tabellen mit vielen Zeilen zu handhaben, nicht viele Tabellen mit der gleichen Struktur.
  • Um tabellenübergreifende Abfragen zu strukturieren, müssen viele verschiedene Tabellen kombiniert werden.
  • Eine kleine Änderung an der Datenstruktur, wie das Hinzufügen einer neuen Spalte, wird zu einem Albtraum.
  • Fremdschlüsselreferenzen zu den Shops werden unmöglich.
  • Wenn die Daten für einen Benutzer keine einzige Datenseite füllen, verschwenden Sie am Ende viel der Erinnerung.

Es gibt einige Gründe, warum das Aufteilen von Daten in separate Tabellen erforderlich sein kann. Hier sind einige mögliche Gründe:

  • Der Zugriff lässt sich auf Tabellenebene einfacher verwalten als auf Zeilenebene.
  • Die Replikation der Daten für jeden Benutzer kann unterschiedliche Anforderungen haben.
  • Eine externe Entität erfordert, dass sich die Daten in separaten Tabellen oder Datenbanken befinden.

Die erste Gruppe von Gründen scheint jedoch für einzelne Tabellen-/Entitätsstrukturen viel stärker zu gewichten. Diese fortgeschritteneren Bedenken scheinen kein Problem zu sein.