![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 6.12.2016 Ostrzeżenie: (0%) ![]() ![]() |
Robię w bazie mysql tabelę z użytkownikami w którą użytkownik będzie mógł za pomocą formularza na stronie wpisać mnóstwo danych typu:
adres profili społecznościowych, email, adres strony www, wiek, telefon, płeć, miasto, zainteresowania, itp. razem powiedzmy 40-50 pól z możliwością wypełnienia. Pola nie byłyby obowiązkowe tylko dobrowolnie wypełniane, więc prawdopodobnie byłoby pusto w wielu kolumnach. Jak do tego zagadnienia podejść? Czy jest sens tworzyć jedną tabelę users z kolumną dla każdego pola, jeśli większość pól będzie prawdopodobnie pustych, czy lepiej w tym przypadku stworzyć tabelę users z danymi podstawowymi id,user_name,password,email drugą tabelę na przykład users_data z polami id,user_id|meta_name|meta_value powiązać je? W tabeli users_data trzymać dane użytkownika w takiej postaci:
Albo jeszcze inaczej tabela users_data zawierała by tylko pola id,user_id,user_data i w kolumnie user_id trzymałbym id użytkownika z tabeli users, a w user_data trzymałbym zserializowane dane użytkownika wpisane w formularzu. Jak takie dane najlepiej przechowywać w bazie? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
To zależy co będziesz z tymi danymi robił. Jeśli nic i tylko wyświetlał je w profilu to dodatkowa 1 kolumna na json z danymi będzie spoko, jak będziesz szukał coś po tych polach to 2-gie rozwiązanie z meta
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 16:34 |