Rabu, 25 November 2015

Back-End Programming



Back-End programming adalah program yang berjalan pada database secara otomatis ketika terjadi suatu pemicu tertentu. Dalam oracle ada beberapa metode untuk melakukan back-end programming, yaitu dengan trigger dan stored procedure.

Trigger
Trigger adalah blok PL/SQL yang disimpan dalam database dan akan diaktivasi ketika kita melakukan statement-statement SQL (DELETE, UPDATE, dan INSERT) pada sebuah tabel. Aktivasi trigger didasarkan pada event yang terjadi di dalam tabel tersebut sehingga trigger dapat membantu dalam menjaga integritas dan konsistensi data. Implementasi trigger yang sering ditemui dalam dunia nyata adalah untuk mengeset dan mengubah nilai kolom dalam suatu tabel sehingga validasi nilai dari tabel tersebut akan terjaga. Adanya trigger dalam database akan meringankan kita dalam pembuatan aplikasi karena di dalam aplikasi yang kita buat, kita tidak perlu lagi untuk melakukan validasi data.
Berikut adalah daftar yang mungkin untuk aktivasi trigger :


Model-model yang digunakan untuk menspesifikasi aturan basis data aktif adalah model ECA (Event-Condition-Action). Aturan dalam model ECA memiliki tiga komponen yaitu:
  • Event, yang memicu suatu rule tersebut biasanya berupa operasi perubahan basis data yang secara eksplisit ditambahkan ke basis data. Namun pada umumnya, bisa berupa event temporal atau jenis event eksternal yang lain.
  • Condition, menentukan apakah suatu rule dijalankan atau tidak. Ketika suatu trigger dijalankan, maka bagian condition (bersifat optional) akan dievaluasi jika didefinisikan oleh yang membuat trigger. Jika evaluasi bagian condition bernilai TRUE maka aksi suatu rule dijalankan.
  • Action, biasanya berupa statement sql.
Manfaat trigger antara lain adalah :
  • Membuat integrity constraint yang kompleks.
  • Mencatat aktivitas suatu tabel (logging).
  • Sinkronisasi
Contoh Kasus :
Pada database supermarket, jika ada pembelian baru maka otomatis stok barang pada tabel barang akan berkurang sesuai dengan jumlah barang yang dibeli. Maka sintaks lengkapnya dalam pl / sql adalah sebagai berikut :

create table barang(
kode_barang varchar2(10) primary key,
nama varchar2(50),
stok_barang number
);
create table pembelian(
id_pembelian number primary key,
kode_barang varchar2(10),
constraint fk_kd_brg foreign_key (kode_barang) references barang(kode_barang)
jumlah_beli number,
harga number
);
create or replace trigger trg_stok_brg after insert on jumlah_beli for each row
begin
update barang set stok_barang =stok_barang – :new.jumlah_beli where id_pembelian = :new.id_pembelian;
end;
/

Stored Procedure
Subprogram adalah PL/SQL Blok yang dipanggil dengan sekumpulan parameter. PL/SQL memiliki dua jenis subprogram yaitu: procedure dan function. Dimana secara umum procedure digunakan untuk melaksanakan aksi dan function digunakan untuk komputasi suatu nilai.
Stored procedure adalah subprogram yang disimpan di dalam database berupa SQL + Bahasa prosedural. Ada beberapa kelebihan yang dapat diperoleh dengan menggunakan stored procedure, meliputi :
  • Dijalankan di database server -> performance lebih baik, network trafik lebih rendah.
  • Tools DBA -> praktis, selalu tersedia di database server.
  • Dapat digunakan oleh banyak aplikasi
    • Standarisasi business logic.
    • SP dapat dipanggil oleh aplikasi luar
  • Dapat memanfaatkan tipe, fungsi yang disediakan DBMS
  • Powerfull, tools sangat penting bagi DB designer, DB programmer dan DBA
  • Hampir semua RDBMS mensupport.
Walaupun syntax berbeda, umumnya menggunakan prinsip yang sama

Sumber :

Tidak ada komentar:

Posting Komentar

Cara Install Dual Boot Linux Mint dan Windows 10

Apa itu Dual Boot ? Dual Boot adalah bagaimana kita membuat Laptop/PC yang kita gunakan terpasang lebih dari ...