Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

perbandingan truncate vs delete di mysql/sqlserver

HAPUS

  1. HAPUS adalah Perintah DML.
  2. Pernyataan DELETE dieksekusi menggunakan kunci baris, setiap baris dalam tabel dikunci untuk dihapus.
  3. Kita dapat menentukan filter di klausa where
  4. Ini menghapus data tertentu jika ada kondisi.
  5. Hapus mengaktifkan pemicu karena operasi dicatat satu per satu.
  6. Lebih lambat dari truncate karena menyimpan log.
  7. Pengembalian dimungkinkan.

POTONGKAT

  1. TRUNCATE adalah perintah DDL.
  2. TRUNCATE TABLE selalu mengunci tabel dan halaman tetapi tidak setiap baris.
  3. Tidak dapat menggunakan Kondisi Where.
  4. Ini Menghapus semua data.
  5. TRUNCATE TABLE tidak dapat mengaktifkan pemicu karena operasi tidak mencatat penghapusan setiap baris.
  6. Lebih cepat dalam performa, karena tidak menyimpan log apa pun.
  7. Pengembalian dimungkinkan.


  • DELETE dan TRUNCATE keduanya dapat dibatalkan saat digunakan dengan TRANSACTION (TRUNCATE dapat dibatalkan di SQL Server, tetapi tidak di MySQL).
  • jika ada PK dengan auto increment, truncate akan mereset counter

http://beginner-sql-tutorial.com/sql-delete-statement .htm



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menyebarkan Aplikasi Java dengan database mysql desktop

  2. Masukkan data ke tabel mySQL dengan java

  3. SQL:Jadikan warna dari tabel warna dapat dicari

  4. MySQL - Tabel 'my_table' tidak dikunci dengan Lock Tables

  5. Tanggal tabel MySQL Pivot pada nama kolom