Junior — Middle
Ma'lumotlarni yumshoq o'chirish printsipini tushuntirib berishingiz mumkinmi va bu to'liq o'chirishdan qanday farq qiladi?
sobes.tech AI
AIdan javob
Yumshoq o‘chirish (soft delete) — bu ma'lumotlar bazasidan jismoniy tarzda o‘chirilmay, balki o‘chirilgan sifatida belgilangan yondashuv, masalan, maxsus maydon (masalan, is_deleted yoki deleted_at) yordamida. Bu ma'lumotlarni ehtimoliy tiklash yoki audit uchun saqlash imkonini beradi.
To‘liq o‘chirish (hard delete) — bu yozuvni jismoniy tarzda ma'lumotlar bazasidan o‘chirish bo‘lib, undan keyin ma'lumotlarni tiklash mumkin emas.
PHPda is_deleted maydoni yordamida yumshoq o‘chirish misoli:
// Yozuvni o‘chirilgan sifatida belgilash
function softDelete($id, $pdo) {
$stmt = $pdo->prepare("UPDATE users SET is_deleted = 1 WHERE id = :id");
$stmt->execute(['id' => $id]);
}
// Faqat o‘chirilmagan yozuvlarni olish
function getActiveUsers($pdo) {
$stmt = $pdo->query("SELECT * FROM users WHERE is_deleted = 0");
return $stmt->fetchAll();
}
Shunday qilib, yumshoq o‘chirish ma'lumotlarni yo‘qotishni oldini oladi va ularni boshqarishda moslashuvchanlik ta'minlaydi.