Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Baza danych w bazie danych (projekt tabeli)

Warto przyjrzeć się Modelowi wartości atrybutu jednostki (EAV) zaprojektuj swoje dane.

Zasadniczo możesz mieć tabelę z nazwami tabel i kilkoma innymi metadanymi dotyczącymi tabel.

Następnie możesz utworzyć tabelę dla każdego z tych wierszy, aby zawierała dane kolumny, takie jak typ danych i nazwa.

Następnie masz tabelę, w której umieszczasz wartości dla każdej kolumny w długiej tabeli.

Pozwala to na dynamiczne tworzenie tabel lub dynamiczne dodawanie/usuwanie wierszy.

Aby porównać relację i EAV, możesz spojrzeć na to pytanie:

Baza wartości atrybutów jednostki a . ścisły model relacyjny e-commerce

Jeśli jednak chcesz mieć relacyjny widok tych danych, musisz utworzyć wyzwalacze, aby zapewnić aktualność widoków, a może to być bardzo pracochłonne, aby to działało dobrze. Jeśli nie potrzebujesz widoku relacyjnego, powinieneś być w porządku.

Innym sposobem na to jest baza danych NoSQL (http://en.wikipedia.org/wiki/ NoSQL ), ponieważ schemat nie musi być ustawiany, więc możesz po prostu przechowywać kolumny potrzebne dla tego wiersza.

W tym momencie wybrałbym drogę NoSQL, ponieważ istnieje wiele baz danych, które mogą działać, a wymyślanie na nowo, które musisz zrobić, jest minimalne.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Łączenie wyników z sumowania wszystkich w jeden wiersz, gdy niektóre kolumny mają różne wartości

  2. MySQL - jak pogrupować godziny, przesunięte o 30 minut

  3. mysql2.so:libmysqlclient_r.so.15:nie można otworzyć udostępnionego pliku obiektu:Brak takiego pliku lub katalogu

  4. Wywołanie procedury składowanej zdefiniowanej przez użytkownika z instrukcji select mysql

  5. Wyszukaj zamówienia, które mają dwa produkty, jeden z konkretnym odniesieniem, drugi z konkretnym opisem