Глосарій

Soft Delete

Soft Delete — паттерн «м'якого» видалення: запис не видаляється з БД фізично, а позначається як видалений через поле deleted_at (timestamp). Усі запити автоматично фільтрують «видалені» записи.

Навіщо

Реалізація

-- Міграція: додати поле
ALTER TABLE users ADD COLUMN deleted_at TIMESTAMP NULL DEFAULT NULL;

-- "Видалення"
UPDATE users SET deleted_at = NOW() WHERE id = 42;

-- Запити ігнорують "видалених"
SELECT * FROM users WHERE deleted_at IS NULL;

Недоліки