@adiletmurzaliev

Как правильно удалять записи из нескольких таблиц в MySQL?

К примеру, имеем следующую стркутуру бд:
bb81fb4d08ac4bc08d1592e639c420a3.png
Как Вы видите по картинке, может быть множество групп, к которым могут относиться большое количество пользователей, которые в свою очередь могут создавать множество постов.
Как правильно организовать удаление группы? Я предполагаю 2 способа:

1. Находить каждого пользователя в группе и по его id удалять все записи в таблице постов.
2. Добавить в таблицу постов поле "group_id", чтобы при удалении просто указывать данный индентификатор.

Подскажите пожалуйста, как следует правильно удалять такие связанные записи?
  • Вопрос задан
  • 3411 просмотров
Пригласить эксперта
Ответы на вопрос 2
SilenceOfWinter
@SilenceOfWinter Куратор тега PHP
та еще зажигалка...
Почитай про внешние ключи, mysql при удалении основной записи позволяет удалять данные из связанных таблиц автоматически.
Ответ написан
Комментировать
@adiletmurzaliev Автор вопроса
Спасибо, но я все же искал. Так и не нашел примера удаления связанных таблиц для 3х уровней. Т.е. если связаны 2 таблицы, то вполне понятно, что удалить их можно по внешнему ключу. Однако, если добавляется еще одна таблица, которая связаны только со 2й таблицей и ничего не знает о первой, то в таком случае как удалить все связанные записи одним запросом?
Не могли бы Вы скинуть пример удаления связанных записей для такой же структуры бд как в моем случае.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы