Apakah komit diperlukan setelah dihapus di Oracle?
Apakah komit diperlukan setelah dihapus di Oracle?
Anonim

Jika Anda ingin menghapus semua baris dari sebuah tabel, pernyataan TRUNCATE TABLE jauh lebih efisien daripada MENGHAPUS penyataan. Pernyataan TRUNCATE TABLE adalah perintah DDL, jadi ini termasuk perintah implisit MELAKUKAN , jadi tidak ada cara untuk mengeluarkan ROLLBACK jika Anda memutuskan tidak ingin menghapus baris.

Dengan mengingat hal ini, apakah penghapusan perlu dilakukan di Oracle?

HAPUS membutuhkan A MELAKUKAN , tapi RUNCATE melakukan bukan.

Demikian juga, apakah kita perlu komit setelah tabel drop? MEMBUAT MEJA dan DROP MEJA pernyataan melakukan bukan melakukan transaksi jika kata kunci SEMENTARA digunakan. (Ini melakukan tidak berlaku untuk operasi lain sementara meja seperti ALTER MEJA dan CREATE INDEX, yang melakukan menyebabkan melakukan .)

Sejalan dengan itu, apakah komit diperlukan setelah pembaruan di Oracle?

mengapa komit tidak diperlukan untuk DDL perintah sedangkan perintah DML wajib untuk menyimpan perubahan secara permanen ke database. Terima kasih sebelumnya. Terkadang jawabannya adalah: "Itulah cara Oracle Corp. mengimplementasikannya."

Apakah komit diperlukan setelah dieksekusi segera?

Melakukan tidak diperlukan setelah setiap LAKUKAN SEGERA . Pernyataan tertentu TIDAK memerlukan A melakukan ; misalnya, jika Anda memotong tabel dengan TRUNCATE. Semua pekerjaan yang tidak terikat dalam transaksi saat ini berkomitmen atau digulung kembali - bukan hanya pernyataan dieksekusi oleh LAKUKAN SEGERA.

Direkomendasikan: