Menghapus Seluruh Data MySQL

Menghapus seluruh data di MySQL menggunakan perintah truncate
Berikut cara melakukan TRUNCATE pada MySQL beserta penjelasannya:


Perintah TRUNCATE pada MySQL

1. Truncate Tabel (menghapus semua data)

TRUNCATE TABLE nama_tabel;

Contoh:

TRUNCATE TABLE users;

Efek:

  • Semua data dihapus permanen.
  • AUTO_INCREMENT reset kembali ke 1.
  • Tidak bisa dibatalkan (non-transactional di MyISAM; di InnoDB tergantung konfigurasi).

⚠️ Syarat agar TRUNCATE berhasil

  • Tidak boleh ada foreign key constraint (referensi ke/dari tabel lain).
  • Anda harus memiliki izin DROP dan ALTER di tabel tersebut.

Jika ada FK:

SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE nama_tabel;
SET FOREIGN_KEY_CHECKS = 1;

🔄 Perbedaan TRUNCATE vs DELETE

PerintahMenghapus dataAuto IncrementKecepatan
TRUNCATESemua data langsungResetSangat cepat
DELETEBisa pilih barisTidak reset (kecuali manual)Lebih lambat

📝 Reset Auto Increment tanpa truncate

Jika ingin menghapus semua data dan reset ID:

DELETE FROM nama_tabel;
ALTER TABLE nama_tabel AUTO_INCREMENT = 1;

Be the first to comment

Leave a Reply

Your email address will not be published.


*