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

Membuat Pemicu yang berjalan di dua tabel

Ini bekerja dengan sempurna.

CREATE OR REPLACE TRIGGER checkDuration
  BEFORE INSERT OR UPDATE on offering
  FOR EACH ROW
DECLARE
  isFound NUMBER;
BEGIN
  SELECT 1 INTO isFound FROM DUAL WHERE EXISTS (
    SELECT * FROM Course c
    WHERE c.courseId = :new.courseId AND c.duration = 5);
  IF EXTRACT(MONTH FROM :new.startDate) = 12 
    THEN RAISE_APPLICATION_ERROR(-20001, 'Courses of five days duration cannot be run in December');
  END IF;
EXCEPTION
  WHEN NO_DATA_FOUND THEN
    NULL;
END;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menulis fungsi di plsql

  2. Menambahkan Banyak (UDF) Fungsi Validasi ke Oracle - Metode Mana yang Berjalan Tercepat

  3. Apa itu Basis Data Oracle?

  4. Bagaimana cara menghitung jumlah kolom dalam tabel menggunakan SQL?

  5. Buat pemicu di Oracle dari pengguna yang mendengarkan acara untuk pengguna lain