Po pierwsze, witam wszystkich gdyż jest to mój pierwszy post.
A piszę ponieważ prosiłbym was o sprostowanie moich poniższych rozważań w sprawie niby błachej ale jak dla mnie nie do końca jeszcze jednoznacznej.
W projektowanej bazie biura podróży posiadam takie tabele jak
OSOBA (klient) oraz DOKUMENT.
Zakładam:
A) relacja jeden-do-wielu, gdyż każda osoba może mieć dowód, paszport,
prawo jazdy itp, które to mogą mieć tylko jednego właściciela.
B) Dokument musi być do kogoś przypisany (moim zdaniem nie może wisieć
w bazie bez podpięcia).
C) Każda osoba musi mieć co najmniej jeden odpowiadający jej dokument
(aby wyjechać wewnątrz UE wystarczy tylko DO, poza UE wystarczą dane
paszportowe). Optymalnie by było gdyby były wprowadzane dane o dwóch
dokumentach (DO+paszport), ale nie jest to konieczne.
I tu powstaje moje pytanie: Jaką relacją zapisać takie założenia?
Załóżmy, że tak narysowana relacja to relacja 1-do-n (lepiej nie
potrafię tego zobrazować używając tylko znaków na klawiaturze).
-|-------------<-
W moim przypadku odpowiednim zapisem będzie zapis taki?
- OSOBA -|-|--------------O-<- DOKUMENT
Czy może jednak taki?
2) OSOBA -|-|----------------|-<- DOKUMENT
Nie jestem pewny co do tych zapisów. Na moje rozumiem to tak:
- odnosi się do przypadku gdy wiersz z tabeli OSOBA może mieć kilka
dokumentów, ale też nie musi mieć ani jednego dokumentu. - odnosi się do przypadku gdy wiersz z tabeli OSOBA może mieć kilka
dokumentów, ale musi mieć chociaż jeden dokument.
Ewentualnie, 2) odnosi się do przypadku gdzie osoba musi mieć wiele (więcej niż 1) dokumentów.
Wszystkie materiały tłumaczą, że "kółko" oznacza "może", a "kreska" oznacza "musi" i na tym się kończy.
Prosiłbym was o rozjaśnienie tej kwestii.
Teraz powstało jeszcze jedno pytanie, czy zapis 2) nie będzie stwarzał
problemów podczas usuwania danych z bazy?