Penciptaan dan manipulasi data membentuk asas pangkalan data dan kami memanggilnya sebagai DDL dan DML masing-masing. A DDL adalah singkatan bagi Bahasa Definisi Data. Ia boleh mewujudkan atau mengubah struktur data dalam pangkalan data dan mereka tidak dapat digunakan untuk mengubah data yang ada pada jadual. Sebagai contoh, kami mempunyai arahan yang hanya membuat jadual dengan atribut jadual yang dinyatakan tetapi tidak pernah menambah sebarang baris ke dalam jadual. Tetapi DML, Bahasa Manipulasi Data, mampu menambahkan, memotong atau memodifikasi data dalam jadual. Sebagai peraturan umum, perintah DDL berurusan dengan struktur jadual manakala perintah DML berurusan dengan data sebenar. Biarlah, mengapa kita hanya menyimpang dari topik "Perbezaan antara Truncate dan Padam"? Terdapat sebab-sebab yang kami bercakap mengenai DML dan DDL. Anda akan memahaminya dalam perbincangan yang akan datang.
Tujuan perintah Truncate ialah memadam keseluruhan jadual. Jadi apabila anda menggunakan arahan Truncate, anda akan kehilangan semua data di atas meja dan anda harus berhati-hati dalam menggunakannya. Marilah kita tahu cara menggunakannya.
Sintaks Truncate:
JADUAL PERKHIDMATAN nama meja;
Di sini, anda harus menentukan nama jadual yang harus dipadamkan secara keseluruhan. Ini memastikan bahawa terdapat sebarang jadual duduk di ruang ingatan. Berikut adalah contoh menggunakan Truncate.
Di bawah adalah jadual 'pekerja' dan lihat saja baris-baris data di dalamnya.
emp-id | emp-nama | penunjukan |
1011 | Jack | Kerani |
1012 | Rosy | Admin |
1014 | Nancy | Kewangan |
Sekarang, marilah kita mengeluarkan arahan di bawah di meja pekerja.
JADUAL PERKHIDMATAN pekerja;
Inilah hasil dari sintaks di atas dan tidak ada data di dalamnya.
emp-id | emp-nama | penunjukan |
Tujuan arahan Hapus ialah untuk membuang baris yang ditentukan dari jadual. Di sini, 'Where' clause digunakan di sini untuk menentukan baris yang perlu dihapuskan. Apabila kita tidak menentukan baris, arahan itu akan memadamkan semua baris dalam jadual. Lihat sahaja sintaksinya.
DELETE DARI pekerja;
Sintaks di atas memadamkan semua baris dari jadual 'pekerja'. Oleh itu jadual yang dihasilkan tidak mengandungi data.
DELETE DARI pekerja WHERE emp-id = 1011;
Pernyataan ini hanya memadamkan satu baris yang emp-id adalah 1011. Maka jadual yang dihasilkan akan seperti di bawah.
emp-id | emp-nama | penunjukan |
1012 | Rosy | Admin |
1014 | Nancy | Kewangan |
Truncate -> alih keluar keseluruhan data dari jadual -> Ruang jadual dibebaskan sekarang.
Padam -> Salin data jadual asal ke ruang Rangkul Kembali -> padam data yang ditentukan / seluruh jadual -> Ruang jadual dibebaskan tetapi ruang Roll Back diisi.
Truncate adalah arahan DDL, pemicu tidak dibenarkan di sini. Tetapi Delete adalah perintah DML, Pemicu dibenarkan di sini.
Jadi mereka adalah perbezaan dan marilah kita melihat dalam bentuk jadual.
S.No | Perbezaan dalam | Truncate | Padam |
1. | DDL atau DML? | Ia adalah DDL dan ia beroperasi pada tahap struktur data. Contoh-contoh lain untuk DDL adalah CREATE and ALTER. | Ia adalah arahan DML dan ia beroperasi pada data jadual. DML ialah Bahasa Manipulasi Data. Perintah seperti SELECT, UPDATE, dan INSERT adalah contoh sempurna untuk DML. DML ialah Bahasa Manipulasi Data. |
2. | Bagaimanakah ia berfungsi? | Sebaik sahaja kami mengeluarkan arahan Truncate, ia hanya mencari jadual yang ditentukan. Kemudian ia menghilangkan semua data dari memori. | Di sini, data jadual asal disalin ke ruang yang dipanggil ruang 'Rol kembali' sebelum melakukan manipulasi data sebenar. Kemudian perubahan dilakukan pada ruang data jadual sebenar. |
3. | Kembalikan | Perintah Truncate tidak pernah menggunakan ruang balik roll dan kami tidak dapat kembali ke data asal. Ruang Rollback adalah satu yang eksklusif dan diduduki apabila arahan DML dikeluarkan. | Perintah Hapus menggunakan ruang balik dan kami hanya boleh menggunakan 'Commit' atau 'RollBack' untuk menerima atau membatalkan perubahan masing-masing.
|
4. | Pencetus | Truncate adalah arahan DDL, pencetus tidak dibenarkan. | Padam adalah arahan DML, Pemicu dibenarkan di sini.
|
5. | Yang lebih pantas? | Ia boleh mengalih keluar semua data dan tidak perlu menyemak apa-apa syarat yang sepadan. Juga, data asal tidak disalin ke ruang pengembalian dan ini menjimatkan banyak masa. Kedua-dua faktor ini menjadikan kerja Truncate lebih cepat daripada Padam.
| Ia menggunakan ruang pemancaran dan sentiasa data asal perlu disimpan di atasnya. Ini adalah beban tambahan dan, pada gilirannya, mengambil banyak masa daripada Truncate. |
6. | Bolehkah kita menggunakan klausa WHERE? | Sebagai Truncate tidak pernah mencari sebarang syarat yang sepadan dan ia hanya membuang semua baris, kami tidak dapat menggunakan klausa 'Where' di sini. | Tetapi kita sentiasa boleh menentukan keadaan dengan bantuan 'mana' klausa dalam perintah Hapus. |
7. | Yang menduduki lebih banyak ruang? | The truncate tidak akan menggunakan ruang rollback dan ia akan menyimpan memori itu. | Ia memerlukan sandaran dalam bentuk ruang Rollback dan oleh itu ia memerlukan lebih banyak ruang ingatan berbanding truncate. |
Mengetahui perbezaan antara mana-mana dua entiti memperluaskan pengetahuan kedua-duanya! Anda telah mendarat di jalan yang betul iaitu halaman web untuk memahami perbezaan, terutamanya, antara arahan pemangkasan dan pemadaman. Berharap anda kini jelas dengan perbezaannya dan beritahu kami jika kami telah membantu anda memahaminya. Anda juga boleh membantu kami menunjuk yang telah ditinggalkan!