Oracle
Insert – insert :
Source code :
|
create table Mahasiswa(
NPM char(10) primary key
not null,
Nama varchar(25)
);
create table Absensi(
NPM char(10) primary key
not null,
Nama varchar(25),
Absensi varchar(4)
);
create or replace trigger
Absen_mhs
after insert on Mahasiswa
for each row
begin
insert into absensi values
(:new.NPM, :new.Nama, '100%');
end;
/
insert into Mahasiswa
values ('1134010051', 'Pradhita Yudha Negara');
select* from Absensi
|
Insert – Update

Gambar 1.3
Tabel Stok Sebelum di Update
Gambar 1.4 Data
Barang yang Dimasukkan

Gambar 1.5
Tabel Stok Setelah di Update
Source code :
|
create table
Pasok (
id_brg
varchar(10) primary key not null,
Nama_brg
varchar(25),
stok_in int
);
create table
Stok (
id_brg
varchar(10) primary key not null,
Nama_brg varchar(25),
stok int
);
create or
replace trigger tr_pasok
after insert
on Pasok
for each row
begin
update Stok
set
stok=stok+:new.stok_in
where
id_brg=:new.id_brg;
end;
insert into
Stok values ('pep00231', 'pepsodent', '0')
insert into
Stok values ('pep00232', 'pepsodent cool', '0')
insert into
Stok values ('pep00233', 'pepsodent herbal', '0')
insert into
Stok values ('pep00234', 'pepsodent sensitif expert', '0')
insert into
Stok values ('pep00235', 'pepsodent min', '0')
select* from
Stok
insert into
Pasok values ('pep00231', 'pepsodent', '50')
|
Insert – Delete

Gambar 1.6 Tabel Stok

Gambar 1.7 Tabel Stok Setelah di Delete Data
Source code :
|
create table Pasok1 (
id_brg varchar(10) primary key not null,
Nama_brg varchar(25),
stok_in int
);
create table Stok1 (
id_brg varchar(10) primary key not null,
Nama_brg varchar(25),
stok int
);
create or replace trigger tr_brg1
after insert on Pasok1
for each row
begin
delete Stok1
where id_brg=:new.id_brg;
end;
/
ALTER TRIGGER
"TR_PASOK" ENABLE
/
insert into Pasok1 values ('pep00231', 'pepsodent', '0')
insert into Stok1 values ('pep00232', 'pepsodent cool',
'0')
insert into Stok1 values ('pep00233', 'pepsodent herbal',
'0')
insert into Stok1 values ('pep00234', 'pepsodent sensitif
expert', '0')
insert into Stok1 values ('pep00235', 'pepsodent min',
'0')
select* from Stok1
|
Delete – Update

Gambar 1.8 Tabel B1

Gambar 1.9 Tabel B1 setelah di Delete

Gambar 1.10 Tabel B2
Source code :
|
create table B1(
id varchar(5)primary key not null,
nama varchar(25),
harga int
);
insert into B1 values ('95001', 'nuvo', '3000')
insert into B1 values ('95002', 'lifeboy', '3000')
insert into B1 values ('95003', 'citra', '4000')
insert into B1 values ('95004', 'sehat', '2500')
insert into B1 values ('95005', 'madicare', '3500')
create table B2(
id char(5),
nama varchar(25),
harga int
);
create or replace trigger B3
before delete on B1
for each row
begin
update B2 set id=:old.id, nama=:old.nama,
harga=:old.harga;
end;
delete B1 where id='95002'
select* from B2
|
Delete – Insert

Gambar 1.11 Tabel B1

Gambar 1.12 Tabel B1 Setelah di Hapus 1 Data

Gambar 1.13 Tabel B1 Setelah di Update
Source code :
|
create table B1(
id varchar(5)primary key not null,
nama varchar(25),
harga int
);
insert into B1 values ('95001', 'nuvo', '3000')
insert into B1 values ('95002', 'lifeboy', '3000')
insert into B1 values ('95003', 'citra', '4000')
insert into B1 values ('95004', 'sehat', '2500')
insert into B1 values ('95005', 'madicare', '3500')
create table B2(
id char(5),
nama varchar(25),
harga int
);
create or replace trigger B3
before delete on B1
for each row
begin
insert into B2 values (:old.id, :old.nama, :old.harga);
end;
delete B1 where id='95001'
select* from B1
|
Delete – delete

Gambar Tabel B2

Gambar Tabel B2 setelah di Delete 1 Data
Source code :
|
create table B1(
id varchar(5)primary key not null,
nama varchar(25),
harga int
);
insert into B2 values ('95001', 'nuvo', '3000')
insert into B2 values ('95002', 'lifeboy', '3000')
insert into B2 values ('95003', 'citra', '4000')
insert into B2 values ('95004', 'sehat', '2500')
insert into B2 values ('95005', 'madicare', '3500')
create table B2(
id char(5),
nama varchar(25),
harga int
);
create or replace trigger B3
before delete on B1
for each row
begin
delete B2 where id=:old.id;
end;
delete B1 where id='95002'
select* from B2
|
Update – delete

Gambar Tabel M1

Gambar Tabel setelah di Update
Source code :
|
create table M1(
id varchar(5) primary key,
nama varchar(25),
alamat varchar(50)
);
insert into M2 values ('87671', 'blawung jaya',
'surabaya')
insert into M2 values ('87672', 'menyuntech jaya',
'surabaya')
insert into M2 values ('87673', 'mamouth jaya',
'surabaya')
create table M2(
id varchar(5) primary key,
nama varchar(25),
alamat varchar(50)
);
create or replace trigger M3
after update on M1
for each row
begin
update M2
set nama=:new.nama, alamat=:new.alamat
where id=:new.id;
end;
update M1
set id='87671', nama='prad jaya', alamat='kurang jaya'
where id='87671'
select* from M2
alter trigger "M3" disable
create or replace trigger M4
before update on M1
for each row
begin
delete M2
where id=:old.id;
end;
|
Update – Insert

Gambar Tabel MHS

Gambar History_Mhs
Source code :
|
create table MHS(
NPM char(10)primary key not null,
Nama varchar(25),
nilai int
);
insert into MHS values ('1134010051', 'pradhita yudha
negara', '80')
insert into MHS values ('1134010052', 'galih prakoso',
'80')
insert into MHS values ('1134010053', 'hanindyo', '80')
create table History_mhs(
NPM char(10),
Nama varchar(25),
nilai int
);
create or replace trigger his_mhs
after update on MHS
for each row
begin
insert into History_mhs values (:old.NPM, :old.Nama,
:old.nilai);
end;
select* from History_mhs
update MHS
set nilai='95'
where NPM='1134010051'
|
Update – update

Gambar Tabel M2
Source code :
|
create table M1(
id varchar(5) primary key,
nama varchar(25),
alamat varchar(50)
);
insert into M2 values ('87671', 'blawung jaya',
'surabaya')
insert into M2 values ('87672', 'menyuntech jaya',
'surabaya')
insert into M2 values ('87673', 'mamouth jaya',
'surabaya')
create table M2(
id varchar(5) primary key,
nama varchar(25),
alamat varchar(50)
);
create or replace trigger M3
after update on M1
for each row
begin
update M2
set nama=:new.nama, alamat=:new.alamat
where id=:new.id;
end;
update M1
set id='87671', nama='ahong jaya', alamat='kurang asem'
where id='87671'
select* from M2
|
Trigger Branching

Gambar Tabel Report
Source code :
|
create table nilai1(
npm char(10)primary key not null,
nama varchar(25),
nilai_t int
);
create table report(
npm char(10),
nilai_t int,
kognitif varchar(2)
);
drop table report
create or replace trigger tr_rpt
after insert on NILAI1
for each row
begin
if :new.nilai_t <=20 then
insert into report values (:new.npm, :new.nilai_t, 'E');
elsif :new.nilai_t <=40 then
insert into report values (:new.npm, :new.nilai_t, 'D');
elsif :new.nilai_t <=60 then
insert into report values (:new.npm, :new.nilai_t, 'c');
elsif :new.nilai_t <=80 then
insert into report values (:new.npm, :new.nilai_t, 'b');
elsif :new.nilai_t <='100' then
insert into report values (:new.npm, :new.nilai_t, 'A');
end if;
end;
insert into nilai1 values ('1134010052', 'galih', '68')
select* from report
|
Trigger Looping

Gambar Tabel Kamar
Source code :
|
create table C1 (
id varchar(10) primary key not null,
nama varchar(25),
no_hp varchar(12),
sewa_kamar int
);
create table kamar (
id varchar(10),
kamar_ke int
);
drop table kamar
create or replace trigger C2
after insert on C1
for each row
declare
i number :=1;
k int := :new.sewa_kamar;
begin
loop
insert into kamar values (:new.id, i);
i:=i+1;
exit when i>k;
end loop;
end;
insert into C1 values ('cus000121', 'pradhita',
'085648182230', '3')
select * from kamar
|
Trigger Message

Gambar Tabel D4

Gambar Trigger Message
Source code :
|
create table D4(
id char(5) primary key not null,
nama varchar(25),
no_hp varchar(12)
);
insert into D4 values ('23101', 'pradhita',
'085648182230')
insert into D4 values ('23102', 'yudha', '085648182231')
insert into D4 values ('23103', 'ahong', '085648182232')
insert into D4 values ('23104', 'blawung', '085648182233')
insert into D4 values ('23105', 'coco', '085648182234')
insert into D4 values ('23106', 'angung', '085648182235')
insert into D4 values ('23107', 'faujan', '085648182236')
insert into D4 values ('23108', 'arivandi',
'085648182237')
create or replace trigger D5
before update on D4
for each row
begin
RAISE_APPLICATION_ERROR(-20001,'Tabel D4 Tidak Dapat Dirubah');
end;
update D4 set nama='prad' where id='23101'
|



0 comments:
Post a Comment