• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak odseparować dane użytkowników w bazie danych

0 głosów
884 wizyt
pytanie zadane 22 listopada 2018 w SQL, bazy danych przez Maikel11 Początkujący (470 p.)
Cześć,

Mam projekt bazy danych pewnego serwisu. Do serwisu będzie można się zalogować. Jeśli każdy użytkownik będzie tworzył przykładowo wpisy i kategorie to do każdej z tych tabel będę musiał dodać user_id i tutaj moje pytanie: Czy nie jest to błąd, że w każdej tabeli będę dodawał kolumnę user_id skoro inne tabele również są ze sobą powiązane np wpisy z kategoriami ? Czy jest to powielanie informacji? Czy działa to na tej samej zasadzie w takim np. WordPressie?
komentarz 22 listopada 2018 przez niezalogowany
relację między artykułem a userem masz w tabeli artykułów jako klucz obcy user_id, nic więcej nie potrzebujesz, więc jakie tu powielanie informacji?

Nie potrzebujesz przecież dodawać relacji między kategorią a użytkownikiem, to zresztą byłoby nielogiczne

No chyba, że chcesz, aby kategorie były powiązane z użytkownikiem... (bo np. tylko ten użytkownik będzie mógł zarządzać daną kategorią) no to dodanie relacji między użytkownikiem a kategorią już jest ok.

Musisz też jednak wziąć pod uwagę fakt, że kategorie są raczej dostępne dla wszystkich z reguły więc tworzenie relacji kategoria-użytkownik jest raczej (o ile nie jest biznesowo uzasadnione) kiepskie
komentarz 22 listopada 2018 przez Maikel11 Początkujący (470 p.)
przeniesione 22 listopada 2018 przez Arkadiusz Waluk
Dałem akurat taki przykład artykuły wpisy ale w mojej aplikacji istnieje wiele tabel, które są powiązane z konkretnym użytkownikiem, z których dane user może usuwać, edytować, dodawać. Te dane są zależne od usera właśnie dlatego napisałem, chciałem się upewnić, że robię to w właściwy sposób oraz czy istnieje jakaś alternatywa. Rozumiem, że mogę  mieć w kilku tabelach powiązania z userem jeśli to konieczne.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

+1 głos
1 odpowiedź 876 wizyt
pytanie zadane 1 lutego 2023 w SQL, bazy danych przez Antoni2422 Użytkownik (570 p.)
0 głosów
1 odpowiedź 731 wizyt
0 głosów
1 odpowiedź 4,507 wizyt

93,741 zapytań

142,676 odpowiedzi

323,294 komentarzy

63,323 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...