Lalu tugas terakhir sistem basis data saya adalah membahas
tentang backend programming (trigger, fungsi, prosedur, cursor), saya kan
membahasnya secara general atau secara garis besar saja.
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.
Manfaat
Manfaat
trigger diantaranya:
-
Mengatur integritas dari konstrain yang kompleks yang
tidak mungkin ditangani oleh sintaks-sintaks pembuatan tabel
-
Mencegah transaksi
yang tidak valid
-
Meningkatkan
tingkat keamanan database dengan menyediakan audit yang lebih kompleks mengenai
informasi perubahan database dan user siapa yang melakukan perubahan
Batasan
Trigger
mempunyai batasan
- Tidak dapat menggunakan
perintah commit dan rollback, selain itu juga tidak dapat memanggil prosedur,
fungsi atau package yang menggunakan perintah commit dan rollback.
- Tidak dapat
diimplementasikan pada kolom pada suatu tabel yang memilki konstrain, jika pada
akhirnya akan menyebabkan pelanggaran konstrain. Biasanya terjadi akibat
modifikasi pada primary key
Sebelum kita
beranjak ke pembahasan fungsi dan prosedur, maka kita harus mengerti dahulu apa
yang dimaksud dengan PL/SQL, karena fungsi dan prosedur merupakan subprogram
dari PL/SQL. Berikut adalah penjelasannya
PL/SQL dirancang
khusus untuk pengolahan mulus dari perintah SQL. Ini memberikan sintaks khusus
untuk tujuan ini dan mendukung persis datatypes sama seperti SQL. Server-side
PL / SQL disimpan dan disusun dalam Oracle Database dan berjalan dalam
executable Oracle. Secara otomatis mewarisi ketahanan, keamanan, dan
portabilitas Oracle Database.
PL/SQL Block 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.
Cursor
Setiap
statement di oracle memiliki c
ursor yang terkait, yang terbagi atas :
- Implicit cursors :
dideklarasikan dan di atur oleh PL/SQL untuk semua DML dan statement SELECT
PL/SQL
Cursor
Eksplisit
Kita
menggunakan kursor ketika memiliki pernyataan SELECT yang mengembalikan lebih
dari satu baris dari database.
Kita dapat
mengikuti lima langkah ketika menggunakan kursor :
1. Mendeklarasikan variabel
untuk menyimpan nilai-nilai dari pernyataan SELECT.
2. Mendeklarasikan kursor,
menetapkan pernyataan SELECT.
3. Buka kursor.
4. Mengambil baris dari kursor
(FETCH).
5. Tutup
kursor.
Tidak ada komentar:
Posting Komentar