Je ne conçois pas tous les jours des schémas, mais j'essaie de configurer correctement les mises à jour / suppressions en cascade pour faciliter l'administration. Je comprends comment fonctionnent les cascades, mais je ne me souviens jamais de quelle table il s'agit.
Par exemple, si j'ai deux tables - Parentet Child- avec une clé étrangère sur Childces références Parentet ce qui a ON DELETE CASCADE, quels enregistrements déclenchent une cascade et quels enregistrements sont supprimés par la cascade? Ma première hypothèse serait que les Childenregistrements soient supprimés quand les Parentenregistrements sont supprimés, car les Childenregistrements dépendent des Parentenregistrements, mais le ON DELETEest ambigu; cela pourrait signifier supprimer l' Parentenregistrement lorsque l' Childenregistrement est supprimé ou cela pourrait signifier supprimer l' Childenregistrement lorsque le Parentest supprimé. Alors c'est quoi?
J'aimerais que la syntaxe soit ON PARENT DELETE, CASCADE, ON FOREIGN DELETE, CASCADEou quelque chose de similaire, pour lever l'ambiguïté. Quelqu'un a-t-il des mnémoniques pour s'en souvenir?