Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MYSQL]Problem z relacja jeden do wielu
alsz82
post 16.04.2009, 20:57:05
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 7.04.2009

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


Witam jestem poczatkujacy i porsze o wyrozumiałosc smile.gif

Problem mam nastepujacy:

Posiadam 3 tabele:

lekarz
lokalizacja
usluga

Nie wiem jak zapisac aby lekarz mogł odwoływac sie do kilku lokalizacji, tzn PANi X pracuje w 3 lokalizacjach (X,Y,Z).
Moje pytanie brzmi czy mam tworzyc dodatkowa tabele dla pracownikow ktorzy pracuja w wiecej niz jednej lokalizacji czy mam to zrobic na aliasach??
Jak to w ogole zapisac questionmark.gif

Ten post edytował alsz82 16.04.2009, 20:58:03
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
1010
post 16.04.2009, 21:12:23
Post #2





Grupa: Zarejestrowani
Postów: 749
Pomógł: 37
Dołączył: 3.10.2006

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


stwórz sobię tabelę która powiąże lekarzy z lokalizacjami. Powinna mieć ona pola id_lekarza, id_lokalizacji.

I wtedy będziesz mógł wyciągnąć bez problemu wszystkie lokalizacje od danego lekarza, oraz wszystkich lekarzy danej lokalizacji.

To jest relacja wiele do wielu. Jeden lekarz może mieć wiele lokalizacji, ale też jedna lokalizacja może mieć wiele lekarzy.


--------------------
Go to the top of the page
+Quote Post
alsz82
post 16.04.2009, 21:43:10
Post #3





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 7.04.2009

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


Cytat(1010 @ 16.04.2009, 22:12:23 ) *
stwórz sobię tabelę która powiąże lekarzy z lokalizacjami. Powinna mieć ona pola id_lekarza, id_lokalizacji.

I wtedy będziesz mógł wyciągnąć bez problemu wszystkie lokalizacje od danego lekarza, oraz wszystkich lekarzy danej lokalizacji.

To jest relacja wiele do wielu. Jeden lekarz może mieć wiele lokalizacji, ale też jedna lokalizacja może mieć wiele lekarzy.


Ja juz mam stworzone dane tabele tylko nie chce tworzyc 2 razy lekarzid o takiej samej nazwie np:

tabela lekarz;
lekarzid =1 , imie ,naziwsko,specjalizacja, lokalizacja;

tabela lokalizacja;
lokalizacjaid=1,Miejscowosc, placowka;

tabela specjalizacja;
idusluga=1, nazwa uslugi

teraz moje pytanie:

Kazdy lekarz ma swoje id, kazda lokalizacja ma swoje id a takze specjalizacja ma id.
Chce zrobic tak ze lekarz o id1 moze pracowac w lokalizacji id =1 i id=2 o takiej samej specjalizacji.

lekarzy sobie przypisalem bez problemu jezli pracuja w jednej lokalizacji jednak nie wiem jak zrobic jezeli pracuje na 2 lokalizacjach.

Z tego co napisales to mam stworzyc tabele nastepujaca:

lekarze_placowki;

lekarz_placowki_id=auto_increment,primary key;

lekarzid1= kowalski,lokalizacjaid1=wrocław;

lekarzid1= kowalski,lokalizacjaid2=opole;


Cos takiego mam zrobic questionmark.gif
Go to the top of the page
+Quote Post
1010
post 17.04.2009, 05:44:38
Post #4





Grupa: Zarejestrowani
Postów: 749
Pomógł: 37
Dołączył: 3.10.2006

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


Dokładnie tak smile.gif po południu mogę Ci to przedstawić diagramówo bo teraz tylko Opera mini i komórka więc nie mam możliwości. Aby całość była wydajniejsza to lepiej by było jakby w tej tabeli id były wartości liczbowe. Z tego co zrozumiałem to lekarz oraz placówka mają przypisane unikalne id liczbowe. Pozdro


--------------------
Go to the top of the page
+Quote Post
alsz82
post 17.04.2009, 15:31:53
Post #5





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 7.04.2009

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


...tak wiec czkam na info smile.gif
Go to the top of the page
+Quote Post
1010
post 17.04.2009, 19:43:03
Post #6





Grupa: Zarejestrowani
Postów: 749
Pomógł: 37
Dołączył: 3.10.2006

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




--------------------
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: 18.07.2025 - 01:43