Selasa, 16 Desember 2014

Stored Procedure

Praktikum Basis Data




Pengertian  Stored Procedure

Pengertian  Stored Procedure - Stored Procedure adalah sebuah kelompok kode SQL yang di simpan di katalog database dan dapat di panggil kemudian oleh program, trigger atau bahkan stored procedure.Sebuah Stored Procedure yang memanggil diri nya sendiri di sebut rekursif stored procedure. Mysql sendiri mendukung penggunaan Stored Procedure sejak MySQL versi 5.x ke atas.

Keuntungan penggunaan Stored Procedure

  1. Meningkatkan performance aplikasi.Sebuah Stored Procedure di simpan dan di compile di katalog database yang mana dapat di eksekusi lebih cepat di bandingkan SQL yang tidak di compile  dari kode aplikasi.
  2. Mengurangi traffic antara aplikasi dan database server. Aplikasi hanya mengirim nama stored procedure untuk mengeksekusi SQL.
  3. Dapat di gunakan kembali dan transparent ke aplikasi yang ingin menggunakan nya.
  4. Aman. Penggunaan Stored Procedure dapat di akses hak nya oleh aplikasi oleh Database Administrator.
Kerugian penggunaan Stored Procedure

  1. Dapat mengakibatkan Database server membutuhkan memory dan prosessor lebih tinggi.
  2. Stored procedure hanya berisi SQL deklaratif, sehingga sangat sulit untuk menulis sebuah procedure dengan kompleksitas logika, seperti bahasa pemrograman yang di gunakan untuk memprogram aplikasi.
  3. Stored procedure tidak dapat di debug di hampir RDBMS, termasuk MySQL.
  4. Membutuhkan keahlian khusus untuk menulis dan me maintain stored procedure yang tidak setiap developer memiliki, sehingga dapat membuat ribet

Contoh Penggunaan Stored Procedure:

1. Pertama Kita buka HeidiSql nya, seperi gambar di bawah ini (sebelumnya mySql di xampp  di aktifkan terlebih dahulu) jika belum ada sesi,bisa membuat yang baru dengan klik tombol baru yang ada di sebelah pojok kiri.


2. Setelah itu langsung saja klik tombol  buka, makan akan masuk ke Menu Utama  HeidiSql


3. Setelah masuk ke Menu utama, selanjutkan kita membuat database seperti gambar dibawah ini :


4. Selanjutnya kita beri nama database " belajar_stored_prosedur", kemudian klik tombol OK seperti gambar dibawah ini :


5. setelah di klik OK maka akan masuk ke database yang tadi dibuat, kemudian kita membuat 1 tabel saja sebagai contoh dengan cara seperti di bawah ini :


6. Selanjutnya memberi nama tabel  (saya beri nama tabel data_diri)  dengan diisi atribut seperti gambar di bawah ini (no_ktp int PK , nama varchar(50),  alamat varchar (50), no_telepon int )
kemudiann klik tombol SIMPAN


7. setelah selesai mebuat database dan tabel, selanjutnya kita membuat stored prosedur nya seperti yang kita bahas sebelumnya.

   7.1  Contoh  Membuat  Prosedur untuk insert ke tabel data_diri dan kita beri nama  "                                    insert_data_diri"  seperti gambar berikut :



Kemudian kita masuk ke tab parameter untuk menambahkan 3 parameter (nama varchar(50) IN, alamat varchar(50) IN, no_telepon int IN) dan menambahkan syntax selanjutnya klik simpan seperti gambar di bawah ini :


Selanjutnya masuk ke tab query untuk pemanggilan prosedur yang telah dibuat tadi, dengan syntax (call insert_data_diri ("imam fahmi f ","SUBANG", 089738 ) kemudian di RUN  (tombol Segitiga berwarna Biru ) lebih jelasnya lihat gambar :


dan untuk melihat hasilnya masuk ke tabel data_diri kemudian masuk ke tab data seperti gambar dibawah ini (no_ktp terisi otommatis karena menggunakan auto increment sehingga tidak akan ada yang sama )




7.2  Contoh Membuat Prosedur Update ke tabel data_diri dengan nama prosedur "update_data_diri" dan membuat 4 Parameter (IN par_no_ktp int, IN par_nama  varchar(50),IN par_alamat varchar(50), IN par_no_telepon int) dengan syntax ( update data_diri set nama=par_nama, alamat=par_alamat, no_telepon=par_no_telepon where no_ktp=par_no_ktp);
dan kemudian klik simpan seperti gambar dibawah ini:


kemudian masuk ke tab query untuk pemanggilan prosedur yang telat dibuat tadi dengam syntax ( call update_data_diri (0000000004,"LINDA","SUBANG",089649) ) dan kemudian klik tombol  RUN (tombol Segitiga berwarna Biru )




dan untuk melihat hasilnya masuk ke tabel data_diri kemudian ke tab data, lihat gambar dibawah ini :


7.3  Contoh Membuat Prosedur delete ke tabel data_diri dengan nama prosedur (delete_data_diri), dengan menambahkan 1 Parameter (IN par_no_ktp int) dan syntax (delete from data_diri where no_ktp=par_no_ktp); dan selanjutnya klik tombol simpan..


kemudian masuk ke tab query untuk pemanggilan prosedur yang telat dibuat tadi dengam syntax ( call delete_data_diri (0000000004) ) dan kemudian klik tombol  RUN (tombol Segitiga berwarna Biru ),lebih jelasnya lihat gambar berikut :


dan untuk melihat hasilnya masuk ke tabel data_diri kemudian ke tab data, lihat gambar dibawah ini :


7.4 Contoh membuat Prosedur Pernyataan IF dengan nama (prosedur_logika_if) , menambahkan 3 Parameter (IN input_nilai int, OUT indek varchar(1)) dengan syntax seperti gambar dibawah dan selanjutnya kli tombol simpan


Kemudian masuk ke tab query untuk pemanggilan Prosedur yang telah dibuat tadi, dengan syntax (call prosedur_logika_if (85,@indek)) dan selanjutnya klik tombol  RUN (tombol Segitiga berwarna Biru ).


dan untuk hasil akhirnya masih di tab quey kita ketikkan syntax ini (select @indek) dan hasilnya seperti gambar dibawah ini:




7.5  Contoh membuat Prosedur Pernyataan CASE kita beri  nama (prosedur_case) , menambahkan 2 Parameter (IN indeks varchar(1), OUT keterangan varchar (50)) dengan syntax seperti gambar dibawah dan selanjutnya kli tombol simpan



Kemudian masuk ke tab query untuk pemanggilan Prosedur yang telah dibuat tadi, dengan syntax (call prosedur_case ("B",@keterangan)) dan selanjutnya klik tombol  RUN (tombol Segitiga berwarna Biru ).


dan untuk hasil akhirnya masih di tab quey kita ketikkan syntax ini (select @keterangan) dan hasilnya seperti gambar dibawah ini:



Sumber: http://imamfahmi29.blogspot.com/

Tidak ada komentar:

Posting Komentar