Anda di halaman 1dari 7

Pemanggilannya:

call kali4(2,2,@hasil);
select @hasil;
Contoh pencarian prosedure menghitung kali 

Pemanggilannya:
call kali2(2,2,@hasil);
select @hasil;

Perulangan dengan LOOP


Kondisi perulangannya dilakukan dengan membuat sebuah pernyataan IF dan digabung dengan
LEAVE untuk keluar dari LOOP atau ITERATE untuk melakukan perulangan lagi.
Strutur dasar:
[nama_label:]
LOOP
[IF kondisi THEN {LEAVE/ITERATE} nama_label]
perintah
[IF kondisi THEN {LEAVE/ITERATE} nama_label]
[END IF]
END LOOP nama_label

Contoh pencarian prosedure menghitung kali 

Pemanggilannya:
call kali3(2,2,@hasil);
select @hasil;
Contoh pencarian prosedure menghitung kali 
WHEN when_value THEN statement_list1
WHEN when_value THEN statement_list2
ELSE THEN statement_list
END CASE

Contoh pencarian prosedure menentukan nilai indeks akhir dengan CASE

Pemanggilannya:
call nilaiIndeksCase(-2,@huruf);
select @huruf;

Perulangan dengan REPEAT


Strutur dasar:
REPEAT
perintah
UNTIL kondisi_loop END REPEAT

Contoh pencarian prosedure menghitung kali 

Pemanggilannya:
call kali1(2,2,@hasil);
select @hasil;

Perulangan dengan WHILE


Strutur dasar:
WHILE kondisi DO
perintah
END WHILE
perintah declare c int  menyiapkan variabel bernama c dengan tipe data
integer
set c=a+b  memberi nilai c dari penjumlahan parameter a + b
variabel c hanya dikenal di stored procedure tambah (variabel lokal)

Pernyataan IF
Strutur dasar:

IF kondisi THEN statement_list1


ELSEIF kondisi THEN statement_list2
ELSE statement_list3
END IF

Contoh pencarian prosedure menentukan nilai indeks akhir

Pemanggilannya:
call nilaiIndeks(-2,@huruf);
select @huruf;

Pernyataan CASE
Strutur dasar:
CASE case_value
4. Procedure dengan paremeter IN OUT
 Misal procedure melihat jumlah karyawan berdasarkan jenis kelamin
 ??

Variabel
Jenis Variabel:
1. Variabel System
a. diakses menggunakan @@nama_var
Contoh: select @@port
b. melihat variabel system dan nilainya  show variables
c. Melihat nilai variabel  select @@nama_var
d. Mengubah nilai variabel (jika tidak read only)  set @@nama_var=values 2.
User Define Variable
a. diakses menggunakan @nama_var
 hanya dikenal per koneksi
 membuat variabel  set @nama_var = values
 Melihat nilai variabel  select @nama_var
b. diakses tanpa menggunakan @
 digunakan di dalam statement stored procedure, dalam routine body diapit
BEGIN dan END
 digunakan untuk membuat variabel lokal pada sebuah stored procedure
 hanya berlaku dalam lingkup BEGIN dan END saja
 Contoh:
1. Procedure tanpa parameter

Untuk memanggil
2. Procedure dengan parameter IN
 Misal procedure melihat karyawan berdasarkan jenis kelamin
 ??

3. Procedure dengan paremeter OUT

Untuk memanggil:
Call jmlmhs dalam kasus ini kita membutuhkan variable baru yakni @jumlah untuk
menampung hasil pemanggilan procedure.
Call jmlkary(@jumlah)$$
Lalu untuk melihat hasilnya:
Select @jumlah $$

Kadang dalam suatu stored routine dibutuhkan untuk menulis beberapa buah statemen sekaligus.
Gabungan statemen tersebut diawali dengan BEGIN dan diakhiri dengan END. Diantara
BEGIN .... END, bisa terdiri lebih dari satu statemen yang dipisahkan dengan tanda semikolon (;).
Karena setiap statemen harus diakhiri dengan semikolon (;) maka diperlukan untuk mengganti
delimiter dari ; menjadi delimiter yang diinginkan, misalnya menggunakan / atau $$ atau yang
lain.

Melihat apakah stored procedure sudah ada atau belum:


SHOW PROCEDURE status;

Melihat isi procedure:


SHOW CREATE PROCEDURE sp_name;

Perintah untuk menjalankan procedure:


CALL sp_name;

Menghapus procedure:
DROP PROCEDURE sp_name;

Stored Procedure dengan Parameter


Stored procedure dapat menggunakan parameter sehingga program aplikasi yang memanggil
stored procedure dapat mengakses basis data yang diperlukan sesuai dengan kondisi yang
diminta yaitu dengan cara mengirimkan suatu nilai ke stored procedure melalui parameter.
Parameter dalam procedure: IN, OUT, IN OUT
 IN, akan mempassingkan nilai konstan dari memori ke procedure
 OUT, akan mengambil nilai dari procedure
 IN OUT, akan mempassingkan nilai dari memori ke dalam procedure dan memungkinkan
nilai yang berbeda dari peocedure dikembalikan ke memori dengan menggunakan parameter
yang sama Secara default, stored procedure/function memiliki parameter IN. Sehingga kata IN
tidak perlu ditambahkan sebelum nama parameter.
MATERI PRAKTIKUM III
STORED PROCEDURE

TUJUAN PRAKTIKUM 1. Mahasiswa mampu memahami stored procedure dalam


basis data 2. Mahasiswa mampu membuat stored procedure
3. Mahasiswa mampu menggunakan perintah-perintah dalam stored procedure

DASAR TEORI
STORED PROCEDURE
Store procedure adalah prosedure atau sub program yang terdiri dari bagian deklaratif dan
prosedural statemen SQL yang tersimpan pada katalog basis data MySQL. Statemen deklaratif :
CREATE, UPDATE, SELECT, dll. Prosedural language : IF-THEN-ELSE, WHILE DO.
Stored procedure diaktifkan dengan memanggil nama dari stored procedure dari DBMS
maupun dari program aplikasi. Stored procedure akan mengembalikan set hasil, yaitu hasil dari
perintah SELECT. Hasil tersebut dapat diproses menggunakan kursor, dengan stored procedure
lain, atau dengan aplikasi. Prosedure yang disimpan juga dapat berisi variabel dideklarasikan
untuk pengolahan data dan kursor yang memungkinkan untuk loop melalui beberapa baris dalam
sebuah tabel.
Manfaat stored procedure:
1. Memperkecil trafic request dari aplikasi ke basis data karena semua proses bisnis dilakukan di
basis data MySQL dan aplikasi akan akan menerima hasil proses saja. 2. Ketika sebuah aplikasi
yang dibangun terdiri dari berbagai bahasa pemrograman (misalkan query dekstop dan web)
yang mana kedua tipe aplikasi tersebut membutuhkan hasil dan operasi basis data yang sama.
3. Untuk meningkatkan keamanan, contoh: user dengan hak akses tertentu tidak bisa
mengakses tabel tabel tertentu secara langsung tetapi melalui stored procedure.

Sintak membuat procedure:

CREATE [OR REPLACE] PROCEDURE sp_name([proc_parameter [,…]])[characteristic ..] routine_body

dimana:
proc_parameter:
[IN | OUT | INOUT] param_name type Type:
Semua tipe data yang valid di MySQL.
Routine_body:
Statement SQL procedure yang valid.

Contoh: membuat stored procedure untuk melihat semua data mahasiswa


DELIMITER /

Anda mungkin juga menyukai