Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][SQLite]Tabele bazy danych, jedna czy kilka? Filozofia...
arstherapia
post
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

Ostrzeżenie: (0%)
-----


Witajcie ponownie,

dzisiaj natknąłem się na kolejny problem: jak zaplanować efektywnie strukturę bazy danych?

W jednej tabeli mam:

1. Nazwa_filmu
2. Opis_filmu
3. Okładka (link)
4. Autor
5. Autor_bio
6. Autor_fot (link)
7. Wersja_jezykowa
8. Cena
9. Premiera ( tak, nie )

i chciałem dodać kategorię, ale uzmysłowiłem sobie, że jedna komórka może przyjmować tutaj wiele wartości:
terapia poznawcza, terapia behawioralna, etc.

Poczytałem i znalazłem taką zasadę, aby nie wciskać wielu wartości w jedną komórkę, więc rozwiązaniem jest
osobna tabela, a tam np.

1. Kategoria_ID
2. Nazwa_kategorii

Czy to ma sens? Jak pożenić zapytania i wyświetlenia pól z tabel ?

To może autorów też wrzucić w osobną tabelę? Wtedy byłyby trzy:

1. Filmy
2. Kategorie
3. Autorzy

A w przyszłości:

4. Klienci
5. Zamówienia

Pozdrawiam,

Rafał

--------------------------
Tak sobie dalej myślę, że jeśli utworzę kilka tabel, to będę mieć między nimi relacje, czyli będę musiał nauczyć się i używać inner join itp. ...
Prościej byłoby np. zamiast tabeli - "kategorie" utworzyć osobną kolumnę w tabeli filmy i tam wpisywać kategorię.

Zamotałem się.

Ten post edytował arstherapia 3.09.2014, 23:14:10
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
arstherapia
post
Post #2





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 13.08.2014

Ostrzeżenie: (0%)
-----


W footerze sklepu, jak już go sobie napiszę, umieszczę:

Platforma sklepu powstała tylko i wyłącznie dzięki pomocy osób z forum php.
Special Thx to All.

------------
Wiecie co, ja to chyba muszę sobie rozrysować.
Biorę psa na spacer, przemyślę, a potem rozrysuję.



-------------------------
To tak na moje by wyglądało:

Tabela : filmy

1. Tytuł
2. Autor (pole powiązane z tabelą osoby - 1 )
3. Opis
4. Kategoria główna ( pole powiązane z tabelą kategorie )
5. Kategoria pomocnicza ( pole powiązane z tabelą kategorie )
6. Okładka
7. Autor_bio ( pole powiązane z tabelą osoby - 2 )
8. Autor_fot ( pole powiązane z tabelą osoby - 3 )
9. Cena
10. Wersja językowa

Tabela : osoby

1. Imię i nazwisko
2. Biografia
3. Zdjęcie

Tabela : kategorie

1. Poznawcza
2. Humanistyczna
3. Analityczna
4. Superwizja
5. Terapia par i rodzin
itd.

Rozwiązanie to ma w sobie ograniczenie, że jeden film może być w dwóch kategoriach.

Wychodzi mi z tego pięć "joinów" czy jak to nazywacie, które jakoś muszę wygenerować za każdym razem.
W związku z tym dużo pracy ( a raczej nauki ) przede mną.

Czytałem jeszcze coś o tabelach łączących, takich dodatkowych, ale to już chyba za ostra jazda dla mnie...

Ciągle chodzi mi po głowie pokusa, tak jak kiedyś chciałem całkiem uniknąć sql'a, to teraz chciałbym to utrzymać
w jednej tabeli, nawet wbrew redundancji danych. W końcu to góra 200 filmów, ruch niewielki...
Go to the top of the page
+Quote Post

Posty w temacie
- arstherapia   [MySQL][SQLite]Tabele bazy danych, jedna czy kilka? Filozofia...   3.09.2014, 21:39:48
- - luniak   [PHP] pobierz, plaintext Tak sobie dalej myślę, że...   4.09.2014, 05:54:10
- - zidek   Jeśli każdy film ma jednego autora, a każdy autor ...   4.09.2014, 08:08:24
- - mmmmmmm   Jeśli mowa o filmach to jeszcze lepiej zrobić jesz...   4.09.2014, 08:27:15
- - phpion   @mmmmmmm: Po co w tej tabeli osobna kolumna na klu...   4.09.2014, 08:41:09
|- - mmmmmmm   Cytat(phpion @ 4.09.2014, 09:41:09 ) ...   4.09.2014, 09:07:55
- - nospor   w Film_kategoria tez nasz oddzielne ID i a dobrą s...   4.09.2014, 08:48:34
- - phpion   Zgadza się, dlatego napisałem "jeśli założyć...   4.09.2014, 08:50:47
- - nospor   No to jesli zalozyc, ze interesuje nas tylko autor...   4.09.2014, 08:54:07
- - arstherapia   O cholera ! Bardzo Wam dziękuję, muszę teraz ...   4.09.2014, 08:54:46
- - nospor   CytatPiszecie, że należy unikać powtarzania się da...   4.09.2014, 09:01:28
- - phpion   Oczywiście w tym o czym pisze ~nospor należy zacho...   4.09.2014, 09:09:18
- - nospor   CytatOczywiście w tym o czym pisze ~nospor należy ...   4.09.2014, 09:16:03
- - arstherapia   W footerze sklepu, jak już go sobie napiszę, umies...   4.09.2014, 14:57:46
- - Turson   Jak na moje dodaj primary keys typu film_id, osoba...   4.09.2014, 15:01:48
- - arstherapia   Dobrze, Turson, dziękuję !   4.09.2014, 15:04:35
- - nospor   CytatRozwiązanie to ma w sobie ograniczenie, że je...   4.09.2014, 16:52:33
|- - arstherapia   Cytat(nospor @ 4.09.2014, 17:52:33 ) ...   5.09.2014, 21:00:36
- - nospor   Po pierwsze: pisalem juz ci kiedys, ze jak chcesz ...   6.09.2014, 06:35:02
- - arstherapia   I dostało mi się słuszny OPR od nospor'a Fa...   6.09.2014, 11:28:22


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 16:08