SQL relacje

0

Hej.
Mam pewien problem. Mam 3 tabele: kursy, klienci i statusy (realizacje zamówień, gdzie można zamawiać kurs i dodatkowo są informacje o rozliczeniu w kolumnie stan). Ustaliłem że w tabeli statusy wiele klientów i wiele kursów może się pojawić, ale nie musi, bo na niektórych kursy może nie być chętnych i nikt w nich nie uczestniczył. Jak ustawić taką relację? Jeden do wielu opcjonalną? https://i.imgur.com/jNMkzPk.png

Jak kliknę na te strzałki i odznaczę mandatory to wtedy pojawia się przerywana linia ale w tabeli statusy znikają ograniczenia not null przy kluczach obcych.
Chodzi o taki zapis że jak już jakiś kurs jest w tabeli statusy to musi mieć wypełnione pole kurs_id.

A tak poza tym to wiem że relacje najpierw się projektuje w modelu logicznym, ale konwersja do relacyjnego mi wszystko popsuła.
Program pododawał sam kolumny nie wiadomo skąd.
Klucze obce można dodawać tylko w modelu relacyjnym? Czy w logicznym też, a jeśli tak to gdzie?

1

Relacja jeden do wielu oznacza, że do jednego rekordu w tabeli A masz zero, jeden lub wiele rekordów w tabeli B. Zatem nie musisz odznaczać mandatory, które z resztą znaczy co innego i zakłada, że w tabeli statusy będą rekordy bez kursu i/lub bez klienta.

1 użytkowników online, w tym zalogowanych: 0, gości: 1