В прошлом уроке мы создали базу данных sport и добавил в нее три таблицы (countries, sports и teams). При этом мы установили связь между таблицами по механизму внешних ключей. Но мы не учли одну проблему — как быть, если мы пытаемся удалить/обновить данные в связанных таблицах. В этом уроке мы немного модифицируем нашу базу данных и сделаем несколько запросов из двух таблиц одновременно. Чтобы отобразить поведение данных в дочерних таблицах при изменении/удалении данных из связующей родительской таблицы, необходимо при объявлении внешнего ключа дописать ключевые слова — on update cascade on delete restrict. В данном случае мы подразумеваем, что при обновлении данных в родительской таблице данные в дочерней таблицы также будут обновляться, каскадно. А удаление запрещено (restrict). Возможны и другие варианты, например, set null — т.е при удалении поле в дочерней таблице будет установлено в null.
Также мы рассмотрим inner join и right join (также существует left join, похожий по своей су