Nel caso più semplice, cosa succede se un record viene eliminato da Child e ha uno zio di riferimento? Non è specificato, quindi i vincoli falliscono comunque.
Se l'eliminazione di un bambino non elimina i suoi zii, cosa succede invece? Uncle.childid non può essere nullo.
Quello che vuoi è una di queste tre cose:
- Uncle.childid può essere null e vuoi ON DELETE SET NULL per childid.
- Uncle.childid non può essere null e vuoi ON DELETE CASCADE per childid.
- Childid non appartiene a Uncle e desideri una relazione ChildsUncle con vincoli di chiave esterna ON DELETE CASCADE sia per Child che per Uncle. Uncleid sarebbe una chiave candidata per quella relazione (cioè dovrebbe essere univoca).