Moja przygoda z bazami się dopiero zaczyna, a więc mógłby ktoś mi sprawdzić czy ten rysunek jest bardzo zły?
0
1
Dropek napisał(a):
Moja przygoda z bazami się dopiero zaczyna, a więc mógłby ktoś mi sprawdzić czy ten rysunek jest bardzo zły?
No jest pole do poprawy
- W praktyce PESEL jest wyjątkowo kiepskim kluczem głównym. w 99% przypadków używa się jakiegoś autogenerowanego klucza - sekwencja ew. UUID - jak na zadanie do szkoły może być.
- Pogubiłeś się w zębach - każdy ząb jest przypisany do jednego pacjenta i potencjalnie do wielu zabiegów na rysunku masz łącze do zabiegu, które jednak nie jest możliwe do zrealizowania w oparciu o istniejące pola. Masz id pacjenta (pesel) zapisany w zębie (i dobrze), ale nie masz narysowanej relacji 1..* pacjent zęby. To czego ci brakuje to relacja .. zabiegi zęby, którą powinieneś zrealizować za pomocą tabeli pośredniej:
leczone_zęby
id<PK>
id_zabiegu <FK>
id_zęba <FK>
1
Pierwsze spostrzeżenie:
Tabela pacjenci powinna mieć klucz główny - pole id (auto increment)
Tabela zęby pacjenta powinna mieć klucz obcy idpacjenta (odwołujący się do pacjenci.id).
W tabeli wizyty brakuje powiązania z tabelą pacjenci (powinno być analogicznie do tabeli zęby pacjenta).
Co do powiązania tabeli zabieg z tabelą zęby pacjenta to zależy czy:
1 zabieg = 1 ząb
czy
1 zabieg = 1 lub więcej zębów.
2
Jeśli chcemy obsłużyć temat zadania to proponowałbym poniższy diagram erd. Robiony na szybko ale wydaje się, że wszystkie wymagania spełnia i daje spore możliwości rozwoju.