Membuat Perintah SQL Insert Otomatis Pada Oracle Database Dengan Trigger Penulis : Boby Siswanto www.developapex.com Artikel ini akan membahas tentang Membuat Perintah SQL Insert Otomatis Pada Oracle Database Dengan Trigger. Saat ini semua aplikasi komputer baik desktop, web maupun mobile telah menggunakan database. Database merupakan tempat penyimpan data dan digunakan oleh aplikasi untuk menyimpan data transaksi dengan sifat dapat ditambah, diubah, dihapus atau dilihat kembali. Sebagai contoh kita mengirimkan pesan melalui aplikasi email dan orang yang kita tuju akan membaca pesan tersebut kapanpun dengan menggunakan media apapun (komputer ataupun gadget). Sebenarnya secara teknis, pesan yang kita kirimkan akan disimpan pada sebuah database. Oracle database merupakan sebuah database yang ada saat ini. Oracle database memiliki Database Management System (DBMS) untuk melakukan pengelolaan datanya. Salah satu fitur objek yang ada pada Oracle database adalah Trigger. Trigger merupakan fitur yang dapat melakukan aksi secara otomatis ketika sebuah table / view mengalami proses Insert / Update / Delete. Trigger sendiri harus ditempelkan pada table atau view agar dapat beroperasi. Berikut ini langkah-langkah untuk menggunakan trigger agar dapat melakukan insert data otomatis pada Oracle database: 1. Buat sebuah table CREATE TABLE testing_tbl( id NUMBER, name VARCHAR2(30), start_date DATE, completed_date DATE, status NUMBER DEFAULT 0, fudue DATE, CONSTRAINT pk1 PRIMARY KEY(id) ); 2. Buat Sequence + Trigger untuk generate autonumber pada atribut kunci table CREATE SEQUENCE test_seq; CREATE OR REPLACE TRIGGER test_trg BEFORE INSERT ON testing_tbl FOR EACH ROW BEGIN SELECT test_seq.NEXTVAL INTO :NEW.id FROM dual; END; / 3. Buat view CREATE OR REPLACE VIEW testing_trig_view AS SELECT * FROM testing_tbl; 4. Buat Trigger untuk insert otomatis CREATE OR REPLACE VIEW testing_trig_view AS SELECT * FROM testing_tbl; CREATE OR REPLACE TRIGGER testing_trg INSTEAD OF INSERT ON testing_trig_view BEGIN IF :NEW.completed_date IS NOT NULL AND :NEW.status = 1 THEN INSERT INTO testing_tbl (name, start_date, completed_date, status) VALUES(:NEW.name, :NEW.start_date, :NEW.completed_date, :NEW.status); INSERT INTO testing_tbl (name, status, fudue) VALUES ('Next Name', 0, ADD_MONTHS(:NEW.completed_date, 11)); ELSE INSERT INTO testing_tbl (name, start_date) VALUES(:NEW.name, :NEW.start_date); END IF; END; / 5. Uji coba dengan melakukan insert pada view INSERT INTO testing_trig_view (name, start_date, completed_date, status) VALUES ('One', TO_DATE('10-JAN-19','DD-MON-YY'), TO_DATE('20-JAN-19','DD-MON-YY'), 1); 6. Cek isi table Demikian artikel tentang Membuat Perintah SQL Insert Otomatis Pada Oracle Database Dengan Trigger. Semoga dapat bermanfaat dan menambah wawasan para pembaca. Jika ada pertanyaan seputar Oracle database dapat ditanyakan melalui email boby.siswanto@gmail.com atau mengunjungi website penulis di www.developapex.com. Wassalam – Bobsis’19