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

Contoh Klausa Pemicu Oracle WHEN

Pada artikel ini, Anda akan mempelajari cara menggunakan klausa WHEN di Oracle trigger untuk membuat trigger aktif pada kondisi yang ditentukan. Di bawah ini adalah contohnya.

Anda dapat menguji contoh pemicu ini dengan membuat tabel dan pemicu berikut dalam skema database Oracle Anda.

Buat Tabel

CREATE TABLE EMP
(
EMPNO NUMBER(4) NOT NULL,
ENAME VARCHAR2(10 BYTE),
JOB VARCHAR2(9 BYTE),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(2)
)
/

Buat Pemicu Database Oracle Dengan Klausa WHEN

Pemicu berikut akan diaktifkan hanya jika JOB sama dengan CLERK , dan jika ya, maka kolom COMM (komisi) akan diset menjadi 0.

CREATE OR REPLACE TRIGGER emp_trig_1
BEFORE INSERT
ON EMP
FOR EACH ROW
WHEN (NEW.job = 'CLERK')
BEGIN
:NEW.comm := 0;
END;
/

Uji

Pernyataan insert di bawah untuk tabel EMP akan mencoba memasukkan record untuk CLERK dengan komisi 300.

SET DEFINE OFF;
Insert into EMP
(EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)
Values
(7499, 'ALLEN', 'CLERK', 7698,
TO_DATE('02/20/1981 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), 1600, 300, 30);
COMMIT;

Kueri Tabel

Sekarang kueri tabel EMP untuk catatan yang dimasukkan di atas, dan Anda akan menemukan bahwa nilai kolom COMM adalah 0 .

SELECT *
FROM EMP
WHERE EMPNO = 7499;

Lihat juga:

  • Pelajari Cara Membuat Pemicu di Oracle SQL Developer
  • Buat Pemicu dalam Contoh Formulir 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. Dapatkan tipe data bidang dalam pernyataan pilih di ORACLE

  2. Oracle 11g:Default ke nilai statis saat kueri tidak menghasilkan apa-apa

  3. Oracle:Permintaan SQL yang mengembalikan baris hanya dengan nilai numerik

  4. Bagaimana saya bisa mengatur format waktu tanggal khusus di Oracle SQL Developer?

  5. LEAST() Fungsi di Oracle