Junior — Middle
Můžete vysvětlit princip měkkého mazání dat a jak se liší od úplného mazání?
sobes.tech AI
Odpověď od AI
Měkké smazání (soft delete) je přístup, při kterém data nejsou fyzicky odstraněna z databáze, ale jsou označena jako smazaná, například pomocí speciálního pole (například is_deleted nebo deleted_at). To umožňuje uchovávat data pro případné obnovení nebo audit.
Plné smazání (hard delete) je fyzické odstranění záznamu z databáze, po kterém již data nelze obnovit.
Příklad měkkého smazání v PHP s použitím pole is_deleted:
// Označit záznam jako smazaný
function softDelete($id, $pdo) {
$stmt = $pdo->prepare("UPDATE users SET is_deleted = 1 WHERE id = :id");
$stmt->execute(['id' => $id]);
}
// Získat pouze nenalezené záznamy
function getActiveUsers($pdo) {
$stmt = $pdo->query("SELECT * FROM users WHERE is_deleted = 0");
return $stmt->fetchAll();
}
Tímto způsobem měkké smazání zabraňuje ztrátě dat a poskytuje flexibilitu v jejich správě.