У меня есть следующая таблица отношения в моей базе данных:Почему я получаю «несколько каскадных путей» с этой табличной связью?
Parent
/ \
Child1 Child2
\ /
GrandChild
Я пытаюсь создать отношения FK так, что удаление из родительской таблицы каскадных как ребенка, так и за стол внучат. Для любого отдельного granchild он будет либо основан на одном или других дочерних таблицах, но никогда не будет одновременно одновременно.
Когда я пытаюсь добавить ВКЛЮЧИТЬ КАСКАД в отношения FK, все прекрасно добавляет их к одной «стороне» двух детей (Parent-Child1-GrandChild отлично подходит для Cascade Delete). Однако, как только я добавляю Cascade Delete на стороне Child2 «отношения SQL, говорит мне, что FK вызывает несколько каскадных путей. У меня создалось впечатление, что несколько каскадных путей применяются только тогда, когда более одного FK указывает ту же таблицу. Почему в этом случае я получаю ошибку с несколькими каскадными путями?
PS Разделительные отношения в этой точке очень сложно изменить, поэтому просто сказать мне изменить структуру таблицы не будет полезно, спасибо.