Sobes.tech
Junior — Middle

Pouvez-vous expliquer le principe de suppression douce des données et en quoi il diffère de la suppression complète?

sobes.tech IA

Réponse de l'IA

La suppression douce (soft delete) est une approche où les données ne sont pas physiquement supprimées de la base de données, mais sont marquées comme supprimées, par exemple, à l'aide d'un champ spécial (comme is_deleted ou deleted_at). Cela permet de conserver les données pour une éventuelle restauration ou audit.

La suppression complète (hard delete) est la suppression physique de l'enregistrement de la base de données, après quoi les données ne peuvent pas être récupérées.

Exemple de suppression douce en PHP utilisant le champ is_deleted :

// Marquer l'enregistrement comme supprimé
function softDelete($id, $pdo) {
    $stmt = $pdo->prepare("UPDATE users SET is_deleted = 1 WHERE id = :id");
    $stmt->execute(['id' => $id]);
}

// Obtenir uniquement les enregistrements non supprimés
function getActiveUsers($pdo) {
    $stmt = $pdo->query("SELECT * FROM users WHERE is_deleted = 0");
    return $stmt->fetchAll();
}

Ainsi, la suppression douce permet d'éviter la perte de données et offre une flexibilité dans leur gestion.