Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MYSQL]Problem z relacja jeden do wielu
Forum PHP.pl > Forum > Przedszkole
alsz82
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
1010
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.
alsz82
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
1010
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
alsz82
...tak wiec czkam na info smile.gif
1010
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.