Witam
Mam pytanie dotyczące ułożenia relacji w bazie danych. W bazie mamy trzy tabele o nazwie : Firmy, Faktury, Umowy.
Każda faktura ma swojego kontra<ort>ch</ort>enta i może (lecz nie musi) być powiązana z umową. Zakłada się bowiem, że część faktur może być bez umowy (jakieś drobne rachunki itp). Tabele połączyłem relacjami 1:n w sposób jak poniżej:
Zapewne jest źle, gdyż jest ryzyko, że przy dodawaniu faktury może zajść niezgodnośc polegająca na innej firmie w kolumnie firmy i innej firmie wynikającej pośrednio z kolumny umowy?
Myślałem by zrobić prościej np. tak jak poniżej, wówczas do każdej faktury podajemy nr umowy, a firma wynika z tej umowy, tylko jak wówczas dodać faktury które nie mają umowy?
Proszę o info co robię źle i ewentualne wskazówki jak skonstruować tak tą bazę, by spełniała swoje zadanie i była spójna. Z góry proszę o wyrozumiałość ;)
PS. Oczywiście jest to uproszczony schemat, nie pokazałem kolumn typu kwota faktury itp by nie zaciemniać tematu.