![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 28.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam problem z rozplanowaniem bazy danych. Dokladnie z dwoma tabelami. Chce sie dowiedziec jaki sposb jest najbardziej poprawny, albo (jezeli oba sa poprawne) jakie niosa ze soba korzysci. Dlatego prosze o odpowiedzi ludzi, ktorzy znaja sie na tym bardzo dobrze. Problem: Mam dwie tabele. Nazwa i Rodzaj. Nazwa zawiera tytuly roznych dziel np. Zalozmy ze jest tam 5 rekordow (3 powiesci 2 filmy) [id_nazwa, Tytul, e_order]. Rodzaj to rodzaj dziela (np. powiesc, film) [id_rodzaj, nazwarodzaju, e_order]. Problem zaczyna sie w sytuacji kiedy 3 z 5 rekordow w Nazwa ma identyczny tytul. Np 5 tytułow w Nazwa: 1. Star Wars: New Hope (Film) 2. Star Wars: New Hope (powiesc) 3. Star Wars: New Hope (powiesc) 4. Harry Potter & Chamber of Secrets (powiesc) 5. Blood of Dracula (film) Rekordy 2 i 3 to dwie rozne powiesci pod tym samm tytulem. Jak w tej sytuacji polaczyc relacja obie tabele tak by bylo poprawnie? jeden-do-wielu zatrzymujac 5 rekordow w Nazwa? Wiele-do-wielu redukujac ilosc rekordow do 3 w Nazwa? Jezeli obie sa poprawne to jakie korzyci niosa? Z gory dziekuje za odpowiedz zicher |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
Do tabeli Nazwa dorzuć klucz obcy do rodzaj, będzie wtedy wyglądać np tak: [id_nazwa, id_rodzaj, Tytul, e_order] i rób JOIN na nazwie Nazwa.id_rodzaj = Rodzaj.id_rodzaj
-------------------- The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1 MySQL Client API version : 5.0.27 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 28.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam ponownie
Nie tego dotyczy moje pytanie. Umiem tworzyc relacje. Pytanie do doswiadczonych mysqlowcow sprowadza sie do tego czy w opisanej sytuacji lepiej zrobic relacje: jeden-do-wielu zatrzymujac 5 rekordow w Nazwa? Wiele-do-wielu redukujac ilosc rekordow do 3 w Nazwa? I o uzasadnienie dlaczego tak jest lepiej. po prostu nie chce by na jakims etapie prac nad baza okazalo sie, ze nie bede wstanie rozroznic pozycji o tych samych nazwach i tym samym rodzaju. Z powazaniem zicher |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 20:34 |