Copyright © My Blog
Design by Dzignine
Minggu, 23 November 2014

Tugas Praktikum DBD Modul 8

LAPORAN PRAKTIKUM
FUNGSI,PL/PGSQL DAN TRIGGER

Dosen Pengampu: Aziz Musthofa, S.Kom
logoUIN
Oleh :
Badruz Zamanil Charis
13650120
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UIN MAULANA MALIK IBRAHIM MALANG
2014

MATERI

BENTUK PL/SQL PADA MySQL
PL/SQL MySQL adalah bahasa prosedural yang digunakan untuk mengoptimalkan pembuatanaplikasi database yang menggunakan database MySQL. Kata PL pada PL/SQL merupakan singkatan dari Procedural Language. Dalam PL/SQL dapat digunakan perintah untuk memanipulasi data yang ada dalam database MySQL. PL/SQL MySQL membentuk pemrograman terstruktur dalam memproses data. Pada PL/SQL ditambahkan beberapa hal yang dikenal pada dunia pemrograman, seperti variabel, loop, pemrosesan kondisi, operasi cursor, modularisasai, dan hal-hal lainnya. Semua tambahan itu bertujuan untuk meningkatkan kinerja operasi-operasi SQL pada database MySQL sehingga manfaat dari kehandalannya menjadi maksimal.

Struktur PL/SQL MySQL
         PL/SQL dapat dibagi menjadi tiga, yaitu: prosedur, fungsi, dan trigger. Prosedur dan fungsi bekerja berdasarkan eksekusi langsung dari user/program, sedangkan trigger akan bekerja secara otomatis apabila terjadi aktivitas insert, update atau delete data. Struktur dari bahasa pemrograman PL/SQL MySQL.

Trigger
Trigger adalah blok PL/SQL atau prosedur yang berhubungan dengan table, view, skema atau database yang dijalankan secara implicit pada saat terjadi sebuah event. Trigger merupakan store procedure yang dijalankan secara automatis saat user melakukan modifikasi data pada tabel. Modifikasi data yang dilakukan pada tabel yaitu berupa perintah INSERT, UPDATE, dan DELETE. INSERT , UPDATE dan DELETE bisa digabung jadi satu trigger yang dinamakan Multiple Trigger.

Database triger merupakan sebuah program unit yang disimpan didalam database dan hanya dapat dieksekusi (fired) secara implisit oleh server (oracle server) menurut event yang terjadi pada object acuan dari trigger tersebut.
Triger dapat berisi SQL, PL/SQL, dan Java statement. Selain itu juga dapat memanggil method yang ditulis menggunakan bahasa C.

Kegunaannya Triger :
1.Menentukan nilai kolom – kolom tertentu secara otomatis
2.Menghindarkan transaksi yang tidak valid
3.Membuat autorisasi sekuriti yang kompleks
4.Membuat bussines rule yang kompleks

Event eksekusi trigger :
1.DML event (INSERT, UPDATE & DELETE) statement.
2.DDL event (CREATE, ALTER & DROP) statement
3.Database event (Startup/Shutdown, Error Message & User event (Logon/Logoff))

Tipe dari trigger adalah :
· Application trigger : diaktifkan pada saat terjadi event yang berhubungan dengan sebuah aplikasi
· Database trigger : diaktifkan pada saat terjadi event yang berhubungan dengan data (seperti operasi DML) atau event yang berhubungan dengan sistem (semisal logon atau shutdown) yang terjadi pada sebuah skema atau database.
Trigger perlu dibuat pada saat :
· Membentuk sebuah aksi tertentu terhadap suatu event
· Memusatkan operasi global

Trigger timing adalah waktu kapan trigger diaktifkan. Ada tiga macam trigger timing, yaitu :

· BEFORE : trigger dijalankan sebelum DML event pada tabel
· AFTER : trigger dijalankan setelah DML event pada tabel
· INSTEAD OF : trigger dijalankan pada sebuah view.

Trigger event ada 3 kemungkinan : INSERT, UPDATE atau DELETE.
Pada saat trigger event UPDATE, kita dapat memasukkan daftar kolom untuk mengidentifikasi kolom mana yang berubah untuk mengaktifkan sebuah trigger (contoh : UPDATE OF salary ... ). Jika tidak ditentukan, maka perubahannya akan berlaku untuk semua kolom pada semua baris.

Tipe trigger ada 2 macam, yaitu :

· Statement : trigger dijalankan sekali saja pada saat terjadi sebuah event. Statement trigger juga dijalankan sekali, meskipun tidak ada satupun baris yang dipengaruhi oleh event yang terjadi.

· Row : trigger dijalankan pada setiap baris yang dipengaruhi oleh terjadinya sebuah event. Row trigger tidak dijalankan jika event dari trigger tidak berpengaruh pada satu baris pun.

Trigger body mendefinisikan tindakan yang perlu dikerjakan pada saat terjadinya event yang mengakibatkan sebuah trigger menjadi aktif.

HASIL PERCOBAAN

1. Buatlah fungsi konversi suhu dari Fahrenheit ke derajat celcius dengan rumus konversi 
Kemudian jalankan hasilnya dengan menSELECT fungsi tersebut !


2. Buatlah fungsi untuk mencari alamat mahasiswa dari tabel mahasiswa berdasarkan nama
mahasiswa. Kemudian jalankan dengan perintah SELECT !


3. Buatlah fungsi untuk menghitung nilai dengan menggunakan bahasa pl/sql !
Nilai > 100 atau Nilai<0 Nilai Salah
Nilai = 90 Nilai A
70 = Nilai < 90 Nilai B
60 = Nilai < 70 Nilai C
50 = Nilai < 60 Nilai D
0 = Nilai < 50 Nilai E



4. Buatlah fungsi menggunakan pl/pgsql untuk mencari bilangan ganjil atau genap dari
bilangan yang diinputkan. Kemudian jalankan dengan perintah SELECT !



5. Tambahkan kolom modifikasi pada tabel mahasiswa. Dimana setiap ada insert atau
update maka tanggal pada kolom modifikasi akan menunjukkan tanggal perubahan
tersebut dilakukan.







 Perbedaan SQL dan PL/SQL
  • SQL adalah bahasa deklaratif untuk database yg sudah distandarkan secara internasional (ANSI dan ISO), jadi seharusnya semua database yg menggunakan SQL standar akan memiliki statement/syntax yg sama, baik di Oracle, MySQL atau database lainnya. Tetapi beberapa database memang memiliki statement/syntax proprietary yg hanya dikenali di database itu sendiri dan ini tentu saja bukan standar SQL.  
  • Sementara PL/SQL adalah ekstensi dari SQL dengan menambahkan fungsi bahasa prosedural. Berbeda dengan SQL yg hanya mementingkan bagaimana mendapatkan hasil, dengan PL/SQL juga akan diketahui bagaimana proses untuk mendapatkan hasil tsb. Karena PL/SQL merupakan bahasa prosedural, maka statement/syntax yg digunakan  sangat tergantung dari jenis bahasa yg diadopsi.

Maksud
Pada modul ini akan membahas tentang fungsi, Selain hal itu akan dibahas juga mengenai pl/pgsql dan triger

Tujuan
1.memahami dan menggunakan fungsi dalam database PostgreSQL
2.memahami dasar penggunaan PL/PGSQL dan TRIGER dan macam-macam nya

Manfaat Pembaca
1.Lebih Memahami tentang PL/ SQL,
2.Lebih Memahami tentang Trigger,
3.Lebih Cermat dalam membandingkan PostgreSql dengan MySql,
4.Lebih cepat mendapat informasi yang relevan,
5.Dapat mengambil pemahaman yang lebih dari sebelumnya. 

Saran
Diperlukan pembelajaran lebih lanjut mengenai PL/PGSQL dan TRIGER ini, serta diperlukan latihan dalam mencoba latihan soal yang lain agar praktikan lebih mahir dalam menggunakan kedua DBMS tersebut.Dalam proses TRIGER memerlukan ketelitian jika tidak maka mengulangi perintah dari awal lagi karena pada perintah TRIGER biasanya panjang dan rumit berbeda dengan PL/PGSQL yang cukup mudah diingat daripada TRIGER.

 Daftar Pustaka
http://abdurrahmanfattah.blogspot.com/2011/09/tugas-materi-stored-procedures-function.html
http://www.slideshare.net/haryjava/mengenal-pl-sql
http://www.mysqltutorial.org

Buku : Yakub, 2008, “ Sistem Basis Data : Tutorial Konsep “; Graha Ilmu: Yogyakarta
            Kadir Abdul, 2000, Konsep & Tuntutan Praktis Basis Data, Yogyakarta: Andi
            Sutanta Edhy, 2011, Basis Data Dalam Tinjauan Konseptual. Yogyakarta: Andi

0 komentar:

Posting Komentar