Sobes.tech
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.