Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Apakah pemicu penyisipan memerlukan pernyataan komit?

Pemicu tidak hanya tidak memerlukan COMMIT yang tidak dapat Anda masukkan:pemicu tidak akan dikompilasi jika kode isi menyertakan COMMIT (atau rollback).

Ini karena memicu kebakaran selama transaksi. Saat pemicu menyala, transaksi saat ini masih belum selesai. Saat COMMIT mengakhiri transaksi yang memungkinkan mereka dalam pemicu akan merusak unit kerja.

Jadi perubahan yang dieksekusi dalam pemicu dilakukan (atau dibatalkan) oleh transaksi pemilik yang mengeluarkan DML yang memicu pemicu.

Memang benar bahwa pemicu dapat berjalan di bawah PRAGMA AUTONOMOUS_TRANSACTION, dalam hal ini pemicu harus memiliki COMMIT. Tapi ini adalah kasus tepi, karena ada beberapa penggunaan transaksi bersarang yang berarti di Oracle.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konversi Unixtime ke Datetime SQL (Oracle)

  2. Utilitas:Menghasilkan Prosedur PL/SQL untuk Mengekspor Data Dari Tabel dalam 2 Menit

  3. ora-06553 pls-306 nomor atau jenis argumen yang salah dalam panggilan ke 'ogc_x'

  4. instal dan konfigurasikan OCI8 untuk menghubungkan Oracle ke php

  5. Hapus dari dua tabel dengan kunci asing melingkar