Junior — Middle
Puteți explica principiul ștergerii moi a datelor și în ce se deosebește de ștergerea completă?
sobes.tech AI
Răspuns de la AI
Ștergerea moale (soft delete) este o abordare în care datele nu sunt șterse fizic din baza de date, ci sunt marcate ca șterse, de exemplu, folosind un câmp special (cum ar fi is_deleted sau deleted_at). Acest lucru permite păstrarea datelor pentru eventuale restaurări sau audituri.
Ștergerea completă (hard delete) este eliminarea fizică a înregistrării din baza de date, după care datele nu mai pot fi recuperate.
Exemplu de ștergere moale în PHP folosind câmpul is_deleted:
// Marcare înregistrare ca ștersă
function softDelete($id, $pdo) {
$stmt = $pdo->prepare("UPDATE users SET is_deleted = 1 WHERE id = :id");
$stmt->execute(['id' => $id]);
}
// Obținerea doar a înregistrărilor neșterse
function getActiveUsers($pdo) {
$stmt = $pdo->query("SELECT * FROM users WHERE is_deleted = 0");
return $stmt->fetchAll();
}
Astfel, ștergerea moale evită pierderea datelor și oferă flexibilitate în gestionarea acestora.