PHP MySQL Delete: Menghapus Data

Terkadang data perlu dihapus — pengguna menghapus akun, produk ditarik dari katalog, atau komentar spam dibersihkan. Proses ini disebut delete data MySQL, menggunakan perintah DELETE. Seperti UPDATE, operasi ini harus dilakukan dengan sangat hati-hati.

Perintah DELETE Dasar

<?php
$sql = "DELETE FROM pengguna WHERE id = 5";
$koneksi->query($sql);
?>

PERINGATAN: Selalu Pakai WHERE!

Sama seperti UPDATE, menjalankan DELETE tanpa WHERE akan menghapus SELURUH isi tabel:

-- BENCANA! menghapus semua data
DELETE FROM pengguna;

Pastikan selalu ada kondisi WHERE yang menargetkan baris spesifik.

Delete dengan Prepared Statement

<?php
$stmt = $koneksi->prepare("DELETE FROM pengguna WHERE id = ?");
$stmt->bind_param("i", $id);
$id = 5;
$stmt->execute();
echo "Data dihapus";
?>

DELETE vs TRUNCATE

Ada dua cara mengosongkan data. DELETE menghapus baris tertentu (bisa dengan WHERE) dan bisa dibatalkan dalam transaksi. Sedangkan TRUNCATE TABLE mengosongkan seluruh tabel sekaligus dan mereset AUTO_INCREMENT, tetapi tidak bisa memakai WHERE.

Pertimbangkan Soft Delete

Untuk data penting, banyak pengembang memilih tidak menghapus permanen. Sebaliknya, mereka menandai data sebagai nonaktif dengan kolom seperti status = 'dihapus'. Ini disebut soft delete dan memungkinkan pemulihan data jika diperlukan.

Kesimpulan

Berhati-hatilah saat delete data MySQL. Selalu gunakan WHERE, pakai prepared statement, dan pertimbangkan soft delete untuk data yang mungkin perlu dipulihkan. Sekali terhapus permanen, data sulit dikembalikan.

Referensi: untuk penjelasan lebih mendalam, kunjungi dokumentasi resmi PHP (php.net).

Baca Juga

Ali Akbar

Software Developer yang fokus mengembangkan aplikasi berbasis Web dan Desktop. Senang mempelajari teknologi baru terutama di bidang web design dan web development.

View all posts by Ali Akbar →

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *