Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z doborem typu danych lub schematem bazy
evo
post 7.08.2003, 19:29:21
Post #1





Grupa: Zarejestrowani
Postów: 110
Pomógł: 0
Dołączył: 4.02.2003

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


Witam,

Mam baze z filmami w niej tabele FILMY z tytulami,aktorami,itd oraz inna tabele AKTORZY a w niej imie i nazwisko aktora

teraz dodajac film do bazy wymyslilem ze do tabeli FILMY nie bede dopisywal aktorow tylko ich ID w tabeli AKTORZY

jesli w jednym filmie gra wiecej aktorow to musze wpisac pare ID do pola w tabeli wiec wymyslilem ze pole aktorzy w tabeli FILMY to CHAR i ID aktorow bede rozdzielal przecinkiem np: 2,4,14

i tu zaczyna sie problem bo jesli pozniej bede chcial wyszukac film z jakims tam aktorem o ID 1 i zadam zapytanie do bazy to przeciez wywali mi tez te z aktorami np: 2,4,14 bo w tym tez znajduje sie 1

Czy jest jakis typ danych ktory pozwala na wpisanie wiekszej ilosci INT rozdzielonych jakims separatorem?


A moze jakis inny pomysl jak rozwiazac ten problem?

Inna rzecz na jaka wpadlem to to zeby do kazdego filmu tworzyc nastepna mala tabelke z ID aktorow ktorzy w nim graja w w polu aktorzy w tabeli FILMY tylko nazwe tej tabeli

Ale teraz jesli bede szukal filmow z aktorem x to najpierw sprawdze jego ID w tabeli AKTORZY pozniej bede musial przeszukac wszystkie tabelki z aktorami grajacymi w filmach i tu zaczyna sie problem bo nie wiem czy jest mozliwosc zadania zapytania do bazy cos w stylu :

ZNAJDZ MI TABELE GDZIE POLE JAK 'x' winksmiley.jpg

mysle ze nie wiec bede musial wydac wszystkie nazwy tabel bo beda one lgenerowane losowo i przeszukac kazda z nich

wydaje mi sie ze to troche robota na okolo

Prosze naprowadzic mnie na jakies sensowne rozwiazanie bo troche sie zakrecilem i stoje w miejscu winksmiley.jpg
Go to the top of the page
+Quote Post
uboottd
post 7.08.2003, 21:59:04
Post #2





Grupa: Zarejestrowani
Postów: 384
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Chorzow

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


TYpowa relacja n->m.
Zalatwia sie to trzecia tabela w ktorej masz id_filmu i id_aktora
Np:
filmy:
Kod
1 | terminator

2 | conan

aktorzy:
Kod
1 | arnold

2 | wrenek

tablica laczaca:
Kod
aktor | film

1 | 1

1 | 2

2 | 2

oznacza ze arnold gral w terminatorze i conanie a wrenek tylko w conanie ale za to razem z arnoldem

zapytania:
kto gral w conanie ?
[sql:1:0ecff77740]
select aktor from aktorzy, laczaca, filmy where aktorzy.id = laczaca.id_aktora and laczaca.id_filmu = filmy.id and film='conan'
[/sql:1:0ecff77740]

gdzie gral arnold ?
[sql:1:0ecff77740]
select film from aktorzy, laczaca, filmy where aktorzy.id = laczaca.id_aktora and laczaca.id_filmu = filmy.id and aktor='arnold'
[/sql:1:0ecff77740]


PS. admini: zalozcie moze w podswietlaniu ze slowo kluczowe to <znakbialy>slowo_kluczowe<znakbialy>, co ?
Go to the top of the page
+Quote Post
evo
post 8.08.2003, 00:28:11
Post #3





Grupa: Zarejestrowani
Postów: 110
Pomógł: 0
Dołączył: 4.02.2003

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


Dzieki stokrotne teraz to juz z gorki.Dzieki
Go to the top of the page
+Quote Post
FiDO
post 8.08.2003, 00:54:53
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Jak juz jestesmy przy tym to tez mam pytanie. Na tym przykladzie z filmami, jakbym chcial pobrac tytul filmu i ew. jeszcze jakies dane z tabeli z filmami i do tego wszystkich aktorow grajacych w tym filmie.
Czy da sie to zrobic jednym zapytaniem??
Dwoma to sprawa prosta, aktorow pobieramy osobno podajac id filmu i po klopocie, ale jak w jednym to gorzej, bo nigdy nie wiadomo ile aktorow gralo w danym filmie i trzeba by wyciagnac tablice jakas czy co...
Go to the top of the page
+Quote Post
uboottd
post 8.08.2003, 10:37:56
Post #5





Grupa: Zarejestrowani
Postów: 384
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Chorzow

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


Owszem mozna to zrobic jednym zapytaniem, z tym ze dostaniesz informacje o filmie powielone o ilosc wystepujacych aktorow. Zapytanie takie jak podalem, dodajesz tylko interesujace ci kolumny.
Go to the top of the page
+Quote Post
FiDO
post 8.08.2003, 11:24:44
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Faktycznie... dzieki.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 09:53