Я не створюю схеми щодня, але коли я це роблю, я намагаюся правильно налаштувати каскадні оновлення / видалення, щоб полегшити адміністрування. Я розумію, як працюють каскади, але ніколи не можу згадати, який столик є.
Наприклад, якщо у мене є дві таблиці - Parent
і Child
- із зовнішнім ключем у Child
цих посиланнях Parent
і є ON DELETE CASCADE
, які записи запускають каскад та які записи видаляються каскадом? Моя перша здогадка - це Child
записи, які видаляються, коли Parent
записи видаляються, оскільки Child
записи залежать від Parent
записів, але ON DELETE
це неоднозначно; це може означати видалити Parent
запис, коли Child
запис видалено, або це може означати видалити Child
запис, коли Parent
видалено запис. Так що це?
Я хочу синтаксис був ON PARENT DELETE, CASCADE
, ON FOREIGN DELETE, CASCADE
або що - щось подібне для усунення неясності. Хтось має мнемоніку, щоб запам'ятати це?