kumpulan-kumpulan SQL berupa rountine yang di simpan dalam database MySQL Server.
manfaat di store pocedure ini adalah:
- akan memperkecil trafik request dari aplikasi ke database karena semua proses bisnis dilakukan di database mysql dan aplikasi akan menerima hasil proses saja.
- ketika sebuah aplikasi yang didevelop terdiri dari berbagai bahasa pemrograman (misalkan desktop dan web) yang mana kedua tipe aplikasi tersebut membutuhkan hasil dan operasi database yang sama.
- untuk meningkatkan securiti, misalkan sebuah aplikasi yang login dengan user abcd tidak dapat mengakses tabel2 tertentu secara langsung tetapi mesti melalui store procedure, dengan cara ini akan meningkatkan ke-valid-tan data
oke berikut ini cara membuat store pocedure
dalam contoh dibawah ini kasus tentang sistem informasi sekolah, yang mana store procedure yang dibuat akan menangani tentang menghasilkan data siswa yang difilter bedasarkan kelas.
sturuktur tabel siswa
CREATE TABLE `data_siswa`.`tbl_siswa` (
`nis` char(10) NOT NULL,
`nama` varchar(255) NOT NULL,
`kelas` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
store procedure untuk menampilkan data siswa dalam bentuk resultset
DELIMITER $$
CREATE PROCEDURE sp_tampil_siswa_kelas(p_kelas int)
BEGIN
SELECT * FROM tbl_siswa where KELAS = p_kelas;
END$$
DELIMITER ;
penjelasannya sebagai berikut:
- DELIMITER = adalah untuk memberi tahu kepada myql soal delimiter yang digunakan, secara default menggunakan ; jadi bila ada tanda ; mysql akan mengartikan akhir dari statement, pada contoh di atas delimeter yang digunakan $$ jadi akhir statementnya adalah $$
- CREATE PROCEDURE = adalah header untuk membuat store procedure
- BEGIN END = adalah body dari store procedure, jadi semua SQL nya di tulis disini.
call sp_tampil_siswa_kelas(2);
Tidak ada komentar:
Posting Komentar
KOMENTAR ANDA