Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Projekt bazy
Forum PHP.pl > Forum > Bazy danych
kamil_lk
Cześć.
Chciałbym sobie napisać skrypt do ogłoszeń online.
Jestem w trakcie tworzenia bazy i tutaj moje pytanie.
Czy taki schemat jaki jest załączony na poniższym screenie jest wystarczający(poprawny) do stworzenia takiego serwisu?

Pozdrawiam.
askone
  • W jakim celu wydzielasz treść ogłoszenia do osobnej tabeli?? Przecież treść będzie unikalna dla każdego ogłoszenia, więc nie ma sensu tworzenia osobnej tabeli na te dane.
  • Skoro wiążesz podkategorię z kategorią to mając tylko informację o id_podkategorii jesteś w stanie pobrać również id_kategorii. Wydaje mi się, iż w ten sposób jesteś również w stanie sortować ogłoszenia, pobierać je według kategorii lub według podkategorii. Dlatego też w tabeli ogłoszenia dałbym tylko id_podkategorii.
  • Do tabeli ogłoszenie dodałbym jeszcze kolumny: insert_date, expired_date, promo (dla ogłoszeń wyróżnionych) - zresztą w miarę rozwoju systemu można strukturę będzie rozbudowywać
kamil_lk
Cytat
W jakim celu wydzielasz treść ogłoszenia do osobnej tabeli?? Przecież treść będzie unikalna dla każdego ogłoszenia, więc nie ma sensu tworzenia osobnej tabeli na te dane.

W sumie to nie pamiętam czemu tak zrobiłem, ale w sumie można zrobić tak jak napisałeś smile.gif
Cytat
Skoro wiążesz podkategorię z kategorią to mając tylko informację o id_podkategorii jesteś w stanie pobrać również id_kategorii. Wydaje mi się, iż w ten sposób jesteś również w stanie sortować ogłoszenia, pobierać je według kategorii lub według podkategorii. Dlatego też w tabeli ogłoszenia dałbym tylko id_podkategorii.

Tak też uczynię.
Cytat
Do tabeli ogłoszenie dodałbym jeszcze kolumny: insert_date, expired_date, promo (dla ogłoszeń wyróżnionych) - zresztą w miarę rozwoju systemu można strukturę będzie rozbudowywać


Czy taki układ tabel może być?
askone
  • Usuń kolumnę Id_tresc
  • Ponadto zastanawiam się czy nie lepszym rozwiązaniem organizacji kategorii i podkategorii będzie zastosowanie jednej tabeli ze strukturą drzewa. Czyli tworzysz tabele [Kategoria] z kolumnami: Id, ParentId, Name. Wtedy kategorie główne mają ParentId równe NULL, a podkategorie mają ustawione na wartość ID swojego rodzica.


Pozdrawiam
kamil_lk
Cytat
Ponadto zastanawiam się czy nie lepszym rozwiązaniem organizacji kategorii i podkategorii będzie zastosowanie jednej tabeli ze strukturą drzewa. Czyli tworzysz tabele [Kategoria] z kolumnami: Id, ParentId, Name. Wtedy kategorie główne mają ParentId równe NULL, a podkategorie mają ustawione na wartość ID swojego rodzica.

Przyznam że dopiero po kilkukrotnym przeczytaniu tego zaczaiłem o co chodzi tongue.gif Ale w sumie dobry pomysł smile.gif

Czyli ma być tak?
askone
To jest akurat najprostsze rozwiązanie organizacji struktury drzewiastej. Poczytaj tutaj. Znajdziesz tam dobrze opisane inne rozwiązanie tego "problemu".

edit:
Niby może być, ale nazwy kolumn są troszkę mylące. O ile sprawdzą się w układzie 2 poziomowym tj. Kategoria może podkategorię, ale podkategoria nie może mieć już kolejnej... Sytuacja całkiem mozliwa w systemie ogłoszeniowym. Zmień nazwy kolumn na te, które zaproponowałem lub poczytaj art, który linkowałem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.