Selasa, 25 November 2014

Trigger

Trigger adalah salah satu blok PL/SQL yang disimpan pada database kemudian diaktivasi ketika melakukan operasi SQL seperti DELETE,UPDATE, dan INSERT pada tabel. Pengaktifan trigger berdasarkan aktifitas yang terjadi dalam tabel sehingga trigger berperan penting dalam menjaga keaslian data. Peran trigger dalam database membantu merampingkan user saat membuat aplikasi.

Contoh Implementasi trigger misal pada kasus Wali kelas untuk siswa. Pada data guru terdapat jumlah siswa yang menjadi wali guru tersebut lalu pada siswa hanya mencantumkan NIP dari wali kelasnya. Pada akhirnya ketika ada siswa yang ditambahkan, wali kelas akan menambahkan jumlah siswa yang diwalikan.

Contoh Trigger

Pertama-tama membuat tabel. 

CREATE TABLE jejak
(aktor varchar(10),
tanggal date,
jam date,
kegiatan varchar(100)
)
/


langkah Kedua yaitu kita mulai dengan membuat sebuah trigger untuk user yang login

Kedua membuat trigger untuk user yang sudah login terlebih dahulu. 

CREATE OR REPLACE TRIGGER entry
AFTER
LOGON
ON DATABASE
begin
insert into jejak values (
user, sdate, sdate,
'login ke database ...'
);
end;
/

jika sudah menjalankan perintah trigger sebelumnya, lalu kita perlu memeriksa trigger apakah berfungsi atau tidak, yang harus dilakukan adalah :
- disconn;
- conn nama_user/pass_user;

Trigger yang terlah kita buat berfungsi untuk melihat siapa saja user yang masuk ke dalam sistem, kemudian hasilnya akan dicatat dalam tabel jejak. 
untuk melihatnya bisa menggunakan perintah berikut : 

"select aktor, tanggal, to_char(jam, 'HH:MM:SS'), kegiatan from jejak;" 

Daftar pustaka

Joey-ryp.2012.Trigger pada oracle
http://joey-ryp.blogspot.com/2012/01/trigger-pada-oracle.html



Baca Selengkapnya >>>

Jumat, 14 November 2014

Aljabar relasional

Aljabar relasional adalah suatu bahasa query prosedural yang terdiri dari kumpulan operasi yang inputannya adalah satu atau dua relasi dan keluarannya sebuah relasi baru sebagai hasil dari operasi yang dilakukan. operasi dasar dalam aljabar relasional adalah : select, project, union. 
Operasi-operasi Dasar Aljabar Relasional
-       Select
Operasi select berfungsi untuk menyeleksi tuple-tuple yang memenuhi predikat yang diberikan oleh tabel relasi. Operasi select menggunakan simbo sigma "σ". Predikat muncul sebagai subscript dari σ dan kondisi yang diinginkan yang ditulis dalam predikat.
Contoh penggunaan operasi select :
σNIM = 1103130131(NILAI)
Perintah diatas berarti memilih tupel-tupel dari tabel NILAI yang memiliki atribut NPM bernilai 1103130131. Hasil dari operasi diatas adalah :
1103130131CSG2D38090
1103130131MA1149090

-       Project
Operasi project digunakan untuk memilih nilai atribut-atribut tertentu dari sebuah relasi. Operasi project dilambangkan oleh simbol phi "Π"
Contoh penggunaan operasi project :
Π KD_MK,SKS(MATKUL)
Perintah diatas berarti memilih nilai atribut KD_MK dan SKS dari tabel MATKUL. Hasil dari operasi diatas adalah :
CSG2D33
MUG1B44
KUG1C11

-       Union
Operasi union berfungsi untuk mendapatkan gabungan nilai atribut dari sebuah tabel relasi dengan nilai atribut dari tabel relasi lainnya. Simbol “∪” digunakan untuk menunjukkan operasi union. Operasi union bernilai benar bila terpenuhi 2 kondisi, yaitu : Derajat dari 2 tabel relasi yang dioperasikan harus sama dan domain dari atribut yang dioperasikan juga harus sama.
Operasi union berfungsi mendapatkan gabungan nilai atribut dari sebuah relasi dengan nilai atribut dari tabel relasi lainnya. Simbol "∪" digunakan untuk menunjukkan operasi union.
Contoh penggunaan operasi union :
Misalkan terdapat 2 tabel relasi bernama HIMADIF dan HMIF seperti dibawah :
HIMADIF
NPMNamaKelas
613313041Eko PutraD3IF-35-01
613313052Keque IrfanD3IF-35-02
613313013Riza RulhamD3IF-35-03

HMIF
NIMNamaKelas
1103130121M. Ali NurdinIF 37-01
1103130141Riza RulhamIF 37-02
1103130164Soli KurniawanIF 37-03

dan dari 2 tabel relasi diatas dilakukan operasi union sebagai berikut :
Π Nama(HIMADIF) ∪ Π Nama(HMIF)
Perintah diatas berarti menggabungkan hasil dari operasi project terhadap tabel HIMADIF dengan hasil dari operasi project terhadap tabel HMIF. Hasil dari operasi diatas adalah :
Eko Putra
Keque Irfan
M. Ali Nurdin
Riza Rulham
Soli Kurniawan

Daftar pustaka : 

  • Fathansyah(2012).Basis Data.Bandung: Penerbit Informatika.

Baca Selengkapnya >>>

Selasa, 11 November 2014

Fungsi dan Prosedur PL/SQL

Di postingan kali ini saya akan membahas mengenai contoh prosedur dan fungsi dalam PL/SQL. Pertama saya akan membahas Prosedur dalam PL/SQL.

Prosedure pada PL/SQL

Prosedur dalam PL/SQL adalah blok perintah yang dikompilasi dan digunakan dalam skema database
Bentuk umum dari prosedur seperti :

CREATE OR REPLACE PROCEDURE 
nama_prosedur;
(parameter1 tipe_data,...) AS 
...
BEGIN
statement;
...
END;

Contoh Prosedure pada PL/SQL 

create or replace procedure bagi_dua(x integer) as
bagi number(4);
begin
bagi := x/2;
dbms_output.put_line('hasil :'||bagi);
end
/

Fungsi Pada PL/SQL 

bentuk umum pada fungsi PL/SQL seperti :

CREATE OR REPLACE FUNCTION nama_fungsi 
(parameter1 tipe_data,...)
RETURN tipedata_fungsi IS
variabel_lokal
BEGIN
statement
...
RETURN nilai_fungsi;
END;

Contoh Fungsi pada PL/SQL

create or replace function genap (hasil integer)
return integer  as
hasil integer(10);
begin
if hasil mod 2  = 0
 write ("bilangan genap");
else
 write("bilangan ganjil");
return hasil
end;
/
Setelah fungsi terbuat. maka kini kita dapat memanggilnya, seperti contoh di bawah ini :

declare   
h integer;  
 begin  
 h:=genap(2);  
 dbms_output.put_line('Hasil:'||(h));  
end;  
/  
Baca Selengkapnya >>>