Здравствуйте, Sinclair, Вы писали:
S>- Маинтейнеру приложения не нужно гадать, какие ещё записи подвергнутся удалению. В частности, при поиске всех мест, из которых удаляются записи таблицы X, достаточно искать delete X, а не delete Y, где X транзитивно достижим из Y через on delete cascade.
При длинных цепочках это тоже может быть неудобно — мы удаляем Order, у него знаем о наличии Items. Однако каждый item может ссылаться на какой-то ещё дочерний объект — например, запись о таможне. Та, в свою очередь, на запись о сертификации и т.п. Без исходного item эти вещи не имеют никакого смысла, поэтому тоже надо удалять. Код распухает до неприличия.