J
juventine
Добрый день!
Не совсем разобрался, как удалить данные из приведенной ниже схемы БД. У нас есть новостной сайт, который состоит из новостей и обзоров. У новостей и обзоров есть рубрики, которые включают в себя подрубрики. Нам необходимо удалить из БД рубрику, все ее подрубрики и все новости в них. Я так понимаю, что просто банально удалив первую рубрику из таблицы rubrics, мы не удалим тем самым подрубрики в этой рубрике (таблица subrubrics) и не удалим новости (таблица news). Каким же образом должен выглядеть запрос на удаление рубрики, все ее подрубрик, и новостей из этой рубрики? Предположим, что мы хотим удалить рубрику с id_rubric=1.
Вообще, я так понимаю, id_rubric является внешним ключом для news и subrubrics. То есть, по идее, SQL не должен давать право удалить запись, являющуюся мигрирующим ключом для других таблиц. У меня почуму-то при запросе DELETE FROM `rubrics` WHERE rubrics.id_rubric`=1; SQL удаляет рубрику, но при этом в связанных таблицах id_rubric=1 остаются, не говоря уже про наличие подрубрик и новостей в сообветствующих полях. Не понял я этого момента...
И каким образом перенести все обзоры из некоторой указанной подрубрики А в некоторую указанную подрубрику В?
Огромное спасибо!
Не совсем разобрался, как удалить данные из приведенной ниже схемы БД. У нас есть новостной сайт, который состоит из новостей и обзоров. У новостей и обзоров есть рубрики, которые включают в себя подрубрики. Нам необходимо удалить из БД рубрику, все ее подрубрики и все новости в них. Я так понимаю, что просто банально удалив первую рубрику из таблицы rubrics, мы не удалим тем самым подрубрики в этой рубрике (таблица subrubrics) и не удалим новости (таблица news). Каким же образом должен выглядеть запрос на удаление рубрики, все ее подрубрик, и новостей из этой рубрики? Предположим, что мы хотим удалить рубрику с id_rubric=1.
Вообще, я так понимаю, id_rubric является внешним ключом для news и subrubrics. То есть, по идее, SQL не должен давать право удалить запись, являющуюся мигрирующим ключом для других таблиц. У меня почуму-то при запросе DELETE FROM `rubrics` WHERE rubrics.id_rubric`=1; SQL удаляет рубрику, но при этом в связанных таблицах id_rubric=1 остаются, не говоря уже про наличие подрубрик и новостей в сообветствующих полях. Не понял я этого момента...
И каким образом перенести все обзоры из некоторой указанной подрубрики А в некоторую указанную подрубрику В?
Огромное спасибо!