Я пытаюсь понять, как создать в моих таблицах БД возможность отмены-повтора.
Представьте, что у вас есть таблица задач со следующей структурой:
id <int>
title <varchar>
memo <string>
date_added <datetime>
date_due <datetime>
Теперь предположим, что в течение нескольких дней и нескольких входов в систему было внесено несколько изменений; но пользователь хочет вернуться к одной из версий.
Если это важно, я использую MySQL. Также, если это имеет значение, я хотел бы иметь возможность показывать историю (как в Photoshop) и позволять пользователю переключаться на любую версию.
Бонусный вопрос: Сохраните ли вы всю ячейку памятки
при изменении или попытаетесь сохранить только дельту? Причина, по которой я спрашиваю, заключается в том, что ячейка памятки
может быть большой, и при каждой ревизии может изменяться только одно слово или символ. Конечно, сохранение дельты потребует синтаксического анализа, но если отмены не ожидаются очень часто, не лучше ли сэкономить место, а не время обработки?
Спасибо за вашу помощь.