В свое время сделал для себя модифицированный дистрибутив форума, в котором допустил ошибку, из-за которой в таблице user_group сейчас такие значения полей:
Код: Выделить всё
group_id user_id
1 -1
3 4
4 5
5 6
Прошло уже 8 месяцев... за это время форум был установлен на 50-60 активно живущих серверов. Ошибка есть везде:(
ВОПРОС
Как бы мне автоматизировать ее исправление? Я в движке не очень силен, поэтому точно не знаю всех связей между таблицами. Может есть где-нибудь диаграмма?
Самый просто вариант - сделать что-то в таком духе:
Код: Выделить всё
update user_group set group_id=user_id where user_id<>-1;
truncate table groups;
insert into groups (group_id) select group_id from user_group;
а потом забить в groups дефолтовые значения
Что посоветуете?