![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 23.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Pytanie dotyczy ogólnej konstrukcji bazy danych. Jak zaprojektować - tj. w jaki sposób rozdzielić dane na tabele? Projektuję serwis pozwalający zarejestrowanym użytkownikom na posiadanie strony w domenie np. "domena.pl", czyli użytkownik kasia posiada stronę kasia.domena.pl. Dane dotyczące loginu, hasła i nazwy konta trzymam w osobnej tabeli, aby można było do nich szybko dotrzeć. Tabela "accounts"
Dane dotyczące personaliów danego użytkownika znajdują się w osobnej tabeli "details": - skrócony wyciąg z tabeli; zawiera ona więcej danych, dane z tej tabeli będą rzadziej wykorzystywane, niż z "accounts" Załóżmy, że przykładowa Kasia zakłada stronę w serwisie. Może dodawać do niej podstrony ze zdefiniowanej listy:
Tabela treści strony powinna być opatrzona identyfikatorem konta "accounts.id", aby można było przypisać treści strony i poniższe do konkretnego konta. Aby to jeszcze trochę skomplikować oprócz treści Kasia może dodawać i usuwać obrazy z Galerii, a także grupować je w albumy. (czyli galeria podzielona na albumy). Istnieje możliwość modyfikacji szablonu strony, która opiera się na edycji wartości dla parametrów css arkusza stylów Kasi, czyli jeszcze trzeba przechowywać wartości atrybutów css w bazie. Starałem się opisać sytuację w jak najjaśniejszy sposób. Czy macie pomysł, jak to ugryźć - jak podzielić te dane na tabele, aby były one szybko dostępne? Planowana ilość użytkowników (stron) kilka tysięcy i mam nadzieję na tendencję wzrostową. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 56 Pomógł: 1 Dołączył: 15.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem czy to optymalnie ale ja bym zrobił tak:
- Nową tabelę: id | owner | menu | tresc i tak: - id -> wiadomo - owner -> id lub login właściciela - menu -> np główna, historia etc. - tresc -> zawartość podtrony A i można by było dodać pole link gdzie przechowywany by był link do podstrony. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 15:01 |