Schemat bazy danych do oceny

1

Chciałbym, aby ten schemat przedstawiał bazę danych do prostej aplikacji internetowej, w której użytkownik może wrzucać swoje pomysły na przepisy. Chciałbym także dodać funkcjonalności jakimi będzie możliwość komentowania i lajkowania przepisów. Czy zaproponowana przeze mnie baza danych jest prawidłowa? Dziękuję z góry za odpowiedź :)

PS A może macie jakiś fajny pomysł na rozbudowę takiego serwisu? :)

user image

0

Na moje wygląda ok. Po czym chcesz filtrować, bo to też istotne. Jak się domyślam głównym filtrem będzie typ przepisu czyli ciasto, danie główne itd. Wiesz takie aplikacje to raczej nic ponad to nie wymyślisz. Możesz jeszcze ewentualnie dodać linki do filmów, załączniki jakieś. Ale w tym przypadku masz jeszcze obsługę tych załączników, co dla początkującego może być trochę problematyczne.

1
  1. Po co Ci pole liczba_przepisów w tabeli użytkownik? Wystarczy odpalić select count(*) ... aby było to wiadome.
  2. Po co Ci pole id_komentarz w tabeli przepis? To komentarz powinien przypisany do przepisu, czyli w tabel komentarz powinien być klucz podstawowy id_komentarz oraz klucz obcy id_przepisu.
  3. Po co Ci pole id_składnik w tabeli przepis? To składnik powinien być przypisany do przepisu, czyli w tabeli składnik powinien być klucz podstawowy id_składnika oraz klucz obcy id_przepisu.
1

@Patryk27
ad 3.
a co w sytuacji kiedy jeden składnik zechcesz podpiąć do różnych przepisów ? lepiej zrobić oddzielną tabelę łączącą przepisy ze składnikami

0

Tak jak pisał @Patryk27, w tabeli przepisy niepotrzebne Ci pola id_komentarza i id_składnika (przepis będzie miał tylko jeden składnik, komentarz?). Dla składników musisz stworzyć oddzielną tabelę (tak jak napisał @grzegorz_so), w której łączysz składniki z przepisem i oczywiście dodajesz jeszcze pole z ilością składnika i ewentualnie jednostkami miary. Komentowanie rozwiązać tak jak napisał Patryk.

0

@grzegorz_so: zależy jak rozumiesz składnik.
Ja trzymałbym osobno, bo choć 219g mąki orkiszowej może się pojawić także gdzieś w drugim przepisie, bawienie się w szukanie idka po to tylko, aby sztywno trzymać się zasady "ja nie chcę mieć nigdy zduplikowanych rekordów", będzie nieopłacalne.

0

Myslicie, że w takim razie taki schemat byłby lepszy? Z nim mógłbym dodać nową funkcjonalność dla użytkowników do wprowadzania produktów, a potem przy dodawaniu przepisu mieliby wybór z już gotowych produktów.

user image

1

Moim zdaniem, tak jest lepiej. Brakuje mi pola Treść w tabeli Komentarz i w tabeli Składnik, wg mnie samo pole gramatura nie wystarczy. Raczej dwa pola: ilość i jednostka_miary (gramy, kg, łyżeczki, szklanki, szczypty itp.). Odwiedziny i lajki z tabeli Przepis wrzuciłbym do osobnych tabel.

1 użytkowników online, w tym zalogowanych: 0, gości: 1