В данный момент мы работаем над проектом, и мы должны реализовать мягкое удаление для большинства пользователей (пользовательских ролей). Мы решили добавить поле is_deleted='0' для каждой таблицы в базе данных и установить его на '1', если определенные роли пользователя нажимают кнопку удаления в определенной записи.
Для будущего обслуживания сейчас каждый запрос SELECT должен убедиться, что он не включает записи where is_deleted='1'.
Есть ли лучшее решение для реализации мягкого удаления?
Обновление: я должен также отметить, что у нас есть база данных аудита, которая отслеживает изменения (поле, старое значение, новое значение, время, пользователь, IP) во всех таблицах/полях в базе данных приложения.