Junior — Middle
Kunt u het principe van zachte gegevensverwijdering uitleggen en hoe het verschilt van volledige verwijdering?
sobes.tech AI
Antwoord van AI
Soft delete (zachte verwijdering) is een aanpak waarbij gegevens niet fysiek uit de database worden verwijderd, maar worden gemarkeerd als verwijderd, bijvoorbeeld met behulp van een speciaal veld (zoals is_deleted of deleted_at). Dit maakt het mogelijk om gegevens te behouden voor mogelijke herstel of audit.
Hard delete (fysieke verwijdering) is de fysieke verwijdering van een record uit de database, waarna de gegevens niet kunnen worden hersteld.
Voorbeeld van soft delete in PHP met gebruik van het veld is_deleted:
// Markeer record als verwijderd
function softDelete($id, $pdo) {
$stmt = $pdo->prepare("UPDATE users SET is_deleted = 1 WHERE id = :id");
$stmt->execute(['id' => $id]);
}
// Alleen niet-verwijderde records ophalen
function getActiveUsers($pdo) {
$stmt = $pdo->query("SELECT * FROM users WHERE is_deleted = 0");
return $stmt->fetchAll();
}
Op deze manier voorkomt soft delete dat gegevens verloren gaan en biedt het flexibiliteit in het beheer ervan.