Perbedaan antara pemotongan dan hapus

Perbedaan antara pemotongan dan hapus

Pembuatan dan manipulasi data membentuk dasar database dan kami menyebutnya sebagai DDL dan DML masing -masing. DDL adalah singkatan untuk bahasa definisi data. Itu dapat membuat atau memodifikasi struktur data dalam database dan mereka tidak dapat digunakan untuk mengubah data yang ada di tabel. Misalnya, kami memiliki perintah yang hanya membuat tabel dengan atribut tabel yang ditentukan tetapi tidak pernah menambahkan baris ke dalam tabel. Tetapi DML, bahasa manipulasi data, mampu menambahkan, menghapus atau memodifikasi data dalam tabel. Sebagai aturan umum, perintah DDL berurusan dengan struktur tabel sedangkan perintah DML membahas data aktual. Biarlah, mengapa kita hanya menyimpang dari topik "perbedaan antara pemotongan dan hapus"? Ada alasan mengapa kami berbicara tentang DML dan DDL. Anda akan memahaminya dalam diskusi mendatang.

Apa itu perintah pemotongan?

Tujuan dari perintah pemotongan adalah untuk menghapus seluruh tabel. Jadi saat Anda menggunakan perintah pemotongan, Anda akan kehilangan semua data di atas meja dan Anda harus berhati -hati dalam menggunakannya. Beri tahu kami cara menggunakannya.

Sintaks dari pemotongan:

Tabel terpotong nama meja;

Di sini, Anda harus menentukan nama tabel yang harus dihapus secara keseluruhan. Ini memastikan bahwa akan ada meja yang duduk di ruang memori. Berikut adalah contoh penggunaan pemotongan.

Di bawah ini adalah tabel 'karyawan' dan lihat saja deretan data di dalamnya.

emp-id emp-name penamaan
1011 Mendongkrak Staf
1012 Cerah Admin
1014 Nancy Keuangan

Sekarang, mari kita mengeluarkan perintah di bawah ini di tabel karyawan.

Tabel terpotong karyawan;

Berikut adalah hasil dari sintaks di atas dan tidak ada data di dalamnya.

emp-id emp-name penamaan

Apa itu perintah hapus?

Tujuan dari perintah hapus adalah untuk menghapus baris yang ditentukan dari tabel. Di sini, 'di mana' klausa digunakan di sini untuk menentukan baris yang perlu dihapus. Ketika kami tidak menentukan baris, perintah akan menghapus semua baris di tabel. Lihat saja sintaksnya.

Hapus dari karyawan;

Sintaks di atas menghapus semua baris dari tabel 'karyawan'. Jadi tabel yang dihasilkan tidak mengandung data.

Hapus dari karyawan DI MANA emp-id = 1011;

Pernyataan ini hanya menghapus satu baris tunggal yang emp-id adalah 1011. Jadi tabel yang dihasilkan akan seperti di bawah ini.

emp-id emp-name penamaan
1012 Cerah Admin
1014 Nancy Keuangan

Perbedaan:

  • Truncate adalah DDL; Hapus adalah DML: Kami telah membahas di atas bagaimana DDL dan DML bekerja dalam diskusi kami di atas. Perintah pemotong adalah DDL dan beroperasi pada tingkat struktur data. Tapi hapus adalah perintah DML dan beroperasi pada data tabel. Contoh lain untuk DDL dibuat dan diubah. Dengan cara yang sama, kita bisa mengatakan perintah seperti SELECT, UPDATE, dan INSERT adalah contoh sempurna untuk DML.
  • Bagaimana cara kerja pemotongan dan hapus: Segera setelah kita mengeluarkan perintah pemotong, itu hanya mencari tabel yang ditentukan. Maka itu benar -benar menghilangkan semua data dari memori. Tetapi prosedur kerja sedikit berbeda dalam hal menghapus. Di sini, data tabel asli disalin ke ruang yang disebut ruang 'roll back' sebelum melakukan manipulasi data aktual. Kemudian perubahan dilakukan pada ruang data tabel yang sebenarnya. Jadi, keduanya berbeda dalam cara mereka bekerja.

Memotong -> Hapus seluruh data dari tabel -> ruang tabel dibebaskan sekarang.

Menghapus -> Salin data tabel asli untuk menggulung ruang kembali -> hapus data/seluruh tabel yang ditentukan -> ruang tabel dibebaskan tetapi ruang gulungan kembali diisi.

  • Roll Back: Roll Back seperti perintah undo di aksesoris Microsoft kami. Itu digunakan untuk membatalkan perubahan yang telah kami lakukan baru -baru ini saya.e. dari titik tersimpan terakhir. Untuk melakukan operasi, data harus disalin ke ruang gulungan sebelum diedit. Meskipun roll back ini membutuhkan memori ekstra, mereka sangat berguna untuk kembali ke aslinya. Terutama, saat Anda mengedit karena kesalahan! Mari kita datang ke pemotongan dan hapus sehubungan dengan gulungan kembali sekarang. Seperti yang kita bahas di atas, pemotongan tidak pernah menggunakan ruang roll back dan kami tidak bisa kembali ke data asli. Tetapi delete command menggunakan roll back space dan kami bisa menggunakan 'komit' atau 'rollback' untuk masing -masing menerima atau membatalkan perubahan.
  • Pemicu: Bagi mereka yang membutuhkan penjelasan tentang pemicu, berikut adalah catatan kecil. Pemicu adalah set operasi/operasi yang telah ditentukan sebelumnya yang harus diaktifkan ketika tabel bertemu dengan kondisi tertentu. Misalnya, kami dapat memicu mengubah jumlah gaji ketika pengalaman karyawan dengan perusahaan lebih dari setahun. Pemicu ini juga dapat bekerja di meja lain. Misalnya, kami dapat memperbarui tabel keuangan segera setelah kenaikan gaji telah dilakukan untuk seorang karyawan.

Truncate adalah perintah DDL, pemicu tidak diperbolehkan di sini. Tapi penghapusan adalah perintah DML, pemicu diizinkan di sini.

  • Yang lebih cepat? Seperti yang Anda tebak, perintah pemotong akan lebih cepat dari perintah hapus. Yang pertama dapat menghapus semua data dan tidak perlu memeriksa kondisi pencocokan apa pun. Juga, data asli tidak disalin ke ruang rollback dan ini menghemat banyak waktu. Dua faktor ini membuat pekerjaan terpotong lebih cepat dari yang dihapus.
  • Bisakah kita menggunakan di mana klausa? Klausa 'di mana' digunakan untuk menentukan kondisi pencocokan tertentu dan tidak ada hubungannya dengan pemotongan. Karena pemotong tidak pernah mencari kondisi yang cocok dan itu hanya menghilangkan semua baris, kami tidak dapat menggunakan klausa 'di mana' di sini. Tapi kami selalu dapat menentukan kondisi dengan bantuan klausa 'di mana' dalam perintah hapus.
  • Yang menempati lebih banyak ruang? Pemotongan tidak akan menggunakan ruang rollback dan menghemat memori itu. Tetapi hapus membutuhkan cadangan dalam bentuk ruang rollback dan karenanya membutuhkan lebih banyak ruang memori daripada pemotongan.

Jadi itulah perbedaannya dan mari kita lihat dalam bentuk tabel.

S.TIDAK Perbedaan Memotong Menghapus
1. DDL atau DML? Ini adalah DDL dan beroperasi pada tingkat struktur data. Contoh lain untuk DDL dibuat dan diubah. Ini adalah perintah DML dan beroperasi pada data tabel. DML berarti bahasa manipulasi data. Perintah seperti SELECT, UPDATE, dan INSERT adalah contoh sempurna untuk DML. DML berarti bahasa manipulasi data.

2. bagaimana cara kerjanya? Segera setelah kita mengeluarkan perintah pemotong, itu hanya mencari tabel yang ditentukan. Maka itu benar -benar menghilangkan semua data dari memori. Di sini, data tabel asli disalin ke ruang yang disebut ruang 'roll back' sebelum melakukan manipulasi data aktual. Kemudian perubahan dilakukan pada ruang data tabel yang sebenarnya.
3. Rollback Perintah pemotong tidak pernah menggunakan ruang roll back dan kami tidak bisa kembali ke data asli. Ruang rollback adalah tempat eksklusif dan ditempati saat perintah DML dikeluarkan. Perintah hapus menggunakan ruang roll back dan kami bisa menggunakan 'komit' atau 'rollback' untuk masing -masing menerima atau membatalkan perubahan.

4. Pemicu Pemotong adalah perintah ddl, pemicu tidak diperbolehkan. Hapus adalah perintah DML, pemicu diizinkan di sini.

5. Yang lebih cepat? Itu bisa menghapus semua data dan tidak perlu memeriksa kondisi yang cocok. Juga, data asli tidak disalin ke ruang rollback dan ini menghemat banyak waktu. Dua faktor ini membuat pekerjaan terpotong lebih cepat dari yang dihapus.

Itu menggunakan ruang rollback dan selalu data asli harus disimpan di atasnya. Ini adalah beban ekstra dan, pada gilirannya, membutuhkan banyak waktu daripada pemotongan.
6. Bisakah kita menggunakan di mana klausa? Karena pemotong tidak pernah mencari kondisi yang cocok dan itu hanya menghilangkan semua baris, kami tidak dapat menggunakan klausa 'di mana' di sini. Tapi kami selalu dapat menentukan kondisi dengan bantuan klausa 'di mana' dalam perintah hapus.
7. Yang menempati lebih banyak ruang? Pemotongan tidak akan menggunakan ruang rollback dan menghemat memori itu. Itu membutuhkan cadangan dalam bentuk ruang rollback dan karenanya membutuhkan lebih banyak ruang memori daripada pemotongan.

Mengetahui perbedaan antara dua entitas yang memperluas pengetahuan tentang keduanya! Anda telah mendarat di jalan yang benar saya.e. Halaman web untuk memahami perbedaan, terutama, antara perintah pemotongan dan hapus. Semoga Anda sekarang jelas dengan perbedaannya dan beri tahu kami jika kami telah membantu Anda memahaminya. Anda juga dapat membantu kami menunjukkan yang tersisa!