Używam bazy danych MySQL. W moim modelu danych relacyjnych mam dwie jednostki, które odnoszą się do siebie nawzajem 1: 1. W moim schemacie, relacja 1: 1 jest ustawiana przez umieszczenie pola FK w jednej z dwóch tabel, która odnosi się do PK drugiej tabeli. Obie tabele mają PK i oba są przyrostami automatycznymi.Dwukierunkowe ograniczenie klucza obcego w relacji 1: 1
Zastanawiam się, czy możliwe byłoby zachowanie na nich zachowania ON DELETE CASCADE
, które działa w obie strony.
tj. A 1: 1 B, oznacza, że [usunięcie A usuwa również B], a także [usunięcie B powoduje także skasowanie A].
Zdaję sobie sprawę, że może to nie być absolutnie konieczne z punktu widzenia prawidłowego projektowania aplikacji, ale zastanawiam się, czy jest to rzeczywiście możliwe. O ile dobrze pamiętam, nie można umieścić ograniczenia FK na PK.
+1 za argument "kurczak lub jajko". ;-D – SparKot
@DoSparKot: moja zwykła odpowiedź na "co było pierwsze?" pytanie brzmi "kogut": p –
Hmm, to jest ważny punkt, o którym nie myślałem. Poza tym, tylko myśl o tym, że wiązanie zawodzi na wstawce, z powodu wartości automatycznie zwiększanego pola już wywołuje u mnie mdłości. (P.S. Kogut jest mężczyzną, nie jest to uczciwa walka.) –