Perbedaan Antara Memotong Dan Menghapus Perbedaan Antara

Anonim

Pembuatan dan manipulasi data menjadi basis database dan kami menyebutnya DDL dan DML. DDL adalah kependekan dari Data Definition Language. Ini bisa membuat atau memodifikasi struktur data di database dan tidak dapat digunakan untuk mengubah data yang ada pada tabel. Sebagai contoh, kita memiliki perintah yang hanya membuat tabel dengan atribut tabel yang ditentukan tapi tidak pernah menambahkan baris ke dalam tabel. Tapi DML, Data Manipulation Language, mampu menambahkan, menghapus atau memodifikasi data dalam tabel. Sebagai aturan umum, perintah DDL berhubungan dengan struktur tabel sedangkan perintah DML berhubungan dengan data aktual. Biarkan saja, kenapa kita hanya menyimpang dari topik "Selisih antara Truncate and Delete"? Ada alasan mengapa kami berbicara tentang DML dan DDL. Anda akan memahaminya kedepan berdiskusi.

Apa perintah Truncate?

Tujuan perintah Truncate adalah menghapus keseluruhan tabel. Jadi ketika Anda menggunakan perintah Truncate, Anda akan kehilangan semua data di atas meja dan Anda harus berhati-hati dalam menggunakannya. Beri tahu kami bagaimana cara menggunakannya.

Sintaks dari Truncate:

TRUNCATE TABLE nama tabel ;

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

Berikut adalah tabel 'karyawan' dan lihatlah deretan data di dalamnya.

emp-id emp-name sebutan
1011 Jack Clerk
1012 Rosy Admin
1014 Nancy > Keuangan
Sekarang, marilah kita mengeluarkan perintah di bawah ini pada tabel karyawan.

TRUNCATE TABLE

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

emp-id

emp-name penunjukan Apa itu Perintah Hapus?

Tujuan perintah Delete adalah untuk menghapus baris yang ditentukan dari tabel. Di sini, 'Di mana' klausa digunakan di sini untuk menentukan baris yang perlu dihapus. Bila kita tidak menentukan baris, perintah akan menghapus semua baris dalam 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 WHERE emp-id = 1011; Pernyataan ini hanya menghapus satu baris yang emp-id adalah 1011. Jadi tabel yang dihasilkan adalah seperti di bawah ini.

emp-id

emp-name designation 1012
Rosy Admin 1014
Nancy Keuangan Perbedaan:

Truncate is sebuah DDL; Hapus adalah DML:

  • Kami telah membahas di atas bagaimana DDL dan DML bekerja dalam diskusi di atas.Perintah Truncate adalah DDL dan beroperasi pada tingkat struktur data. Tapi Delete adalah perintah DML dan beroperasi pada data tabel. Contoh lain untuk DDL adalah CREATE dan ALTER. Dengan cara yang sama, kita bisa mengatakan bahwa perintah seperti SELECT, UPDATE, dan REPLACE adalah contoh sempurna untuk DML. Bagaimana cara kerja Truncate and Delete:
  • Segera setelah kami mengeluarkan perintah Truncate, itu hanya mencari tabel yang ditentukan. Maka itu benar-benar menghapus semua data dari memori. Tapi prosedur kerja sedikit berbeda dalam kasus Delete. Di sini, data tabel asli disalin ke ruang angkasa yang disebut ruang 'Roll back' sebelum melakukan manipulasi data aktual. Kemudian perubahan dilakukan pada ruang data tabel sebenarnya. Jadi, keduanya berbeda dalam cara mereka bekerja. Truncate

-> hapus seluruh data dari tabel -> Ruang tabel sudah dibebaskan sekarang. Hapus

-> Salin data tabel asli ke ruang Roll Back -> hapus data / tabel yang ditentukan -> Ruang tabel dibebaskan namun ruang Roll Back terisi. Roll back:

  • Gulungan kembali seperti perintah Undo di aksesoris Microsoft kami. Ini digunakan untuk membatalkan perubahan yang telah kita lakukan baru-baru ini i. e. dari titik terakhir yang disimpan Untuk melakukan operasi, data harus disalin ke ruang Roll Back sebelum diedit. Meskipun punggung Roll ini membutuhkan memori tambahan, mereka sangat berguna untuk kembali ke aslinya. Terutama, bila Anda mengedit beberapa kesalahan! Mari kita datang ke Truncate dan Delete sehubungan dengan Roll kembali sekarang. Seperti yang telah kita bahas di atas, Truncate tidak pernah menggunakan ruang gulung balik dan kita tidak dapat kembali ke data asli. Tapi perintah Delete menggunakan roll back space dan kita bisa menggunakan 'Commit' atau 'Rollback' untuk menerima atau membatalkan perubahan masing-masing. Pemicu:
  • Bagi mereka yang membutuhkan penjelasan tentang pemicu, berikut adalah sedikit catatan. Pemicu adalah seperangkat operasi / operasi yang telah ditentukan sebelumnya yang harus diaktifkan saat meja menemukan kondisi tertentu. Misalnya, kita bisa memicu perubahan jumlah gaji ketika pengalaman seorang karyawan dengan perusahaan lebih dari satu tahun. Pemicu ini bisa bekerja di meja lain juga. Misalnya, kita bisa memperbarui tabel keuangan segera setelah kenaikan gaji dilakukan untuk seorang karyawan. Truncate adalah perintah DDL, pemicu tidak diizinkan di sini. Tapi perintah Delete adalah DML, Pemicu diperbolehkan di sini.

Mana yang lebih cepat?

  • Seperti yang Anda duga, perintah Truncate akan lebih cepat daripada perintah Delete. Yang pertama bisa menghapus semua data dan tidak perlu memeriksa kondisi yang sesuai. Juga, data asli tidak disalin ke ruang rollback dan ini menghemat banyak waktu. Kedua faktor ini membuat pekerjaan Truncate lebih cepat daripada Delete. Bisakah kita menggunakan klausa WHERE?
  • Klausa 'Where' digunakan untuk menentukan kondisi pencocokan tertentu dan tidak ada hubungannya dengan the Truncate. Karena Truncate tidak pernah melihat kondisi yang cocok dan hanya menghapus semua baris, kami tidak dapat menggunakan klausa 'Where' di sini.Tapi kita selalu bisa menentukan kondisinya dengan bantuan klausa 'where' dalam perintah Delete. Yang menempati lebih banyak tempat?
  • Truncate tidak akan menggunakan ruang rollback dan menghemat memori itu. Tapi menghapus kebutuhan backup dalam bentuk ruang Rollback dan karenanya membutuhkan lebih banyak ruang memori daripada truncate. Jadi perbedaannya dan mari kita lihat dalam bentuk tabular.

S. Tidak

Perbedaan dalam Truncate Hapus 1.
DDL atau DML? Ini adalah DDL dan beroperasi pada tingkat struktur data. Contoh lain untuk DDL adalah CREATE dan ALTER. Ini adalah perintah DML dan beroperasi pada data tabel. DML adalah singkatan dari Data Manipulation Language. Perintah seperti SELECT, UPDATE, dan REPLACE adalah contoh sempurna untuk DML. DML adalah singkatan dari Data Manipulation Language.

2.

Bagaimana cara kerjanya? Segera setelah kami mengeluarkan perintah Truncate, itu hanya mencari tabel yang ditentukan. Maka itu benar-benar menghapus semua data dari memori. Di sini, data tabel asli disalin ke ruang angkasa yang disebut ruang 'Roll back' sebelum melakukan manipulasi data aktual. Kemudian perubahan dilakukan pada ruang data tabel sebenarnya. 3.
RollBack Perintah Truncate tidak pernah menggunakan ruang gulung balik dan kami tidak dapat kembali ke data asli. Ruang Rollback adalah satu eksklusif dan sibuk saat perintah DML dikeluarkan. Perintah Delete menggunakan roll back space dan kita bisa menggunakan 'Commit' atau 'Rollback' untuk menerima atau membatalkan perubahan masing-masing. 4.

Pemicu Truncate adalah perintah DDL, pemicu tidak diperbolehkan. Hapus adalah perintah DML, Pemicu diperbolehkan di sini. 5.

Mana yang lebih cepat? Ini bisa menghapus semua data dan tidak perlu memeriksa kondisi yang sesuai. Juga, data asli tidak disalin ke ruang rollback dan ini menghemat banyak waktu. Kedua faktor ini membuat pekerjaan Truncate lebih cepat daripada Delete. Menggunakan ruang rollback dan selalu data asli harus disimpan di atasnya. Ini adalah beban ekstra dan, pada gilirannya, membutuhkan banyak waktu daripada Truncate.

6.
Bisakah kita menggunakan klausa WHERE? Saat Truncate tidak pernah mencari kondisi yang cocok dan hanya menghapus semua baris, kami tidak dapat menggunakan klausa 'Where' di sini. Tapi kita selalu bisa menentukan kondisinya dengan bantuan klausa 'where' dalam perintah Delete. 7.
Yang menempati lebih banyak tempat? Truncate tidak akan menggunakan ruang rollback dan menghemat memori itu. Butuh backup dalam bentuk ruang Rollback dan oleh karena itu dibutuhkan lebih banyak ruang memori daripada truncate. Mengetahui perbedaan antara dua entitas memperluas pengetahuan pada keduanya! Anda telah mendarat di jalan yang benar i. e. halaman web untuk memahami perbedaan, terutama, antara perintah truncate dan delete. Harap Anda sekarang jelas dengan perbedaannya dan beri tahu kami jika kami telah membantu Anda memahaminya. Anda juga bisa membantu kami menunjukkan yang telah ditinggalkan!