SlideShare a Scribd company logo
1 of 12
Stored Procedure 
Ade Putra, M.Kom. 
UNIVERSITAS BINA DARMA 
2011
Procedure Tersimpan (Stored Procedure) 
Pada prosedur tersimpan sama halnya dengan fungsi 
tersimpan yang digunakan untuk meringkas perintah 
mysql yang akan dijalankan, namun pada prosedur 
tersimpan ini tidak harus mengembalikan nilai seperti 
yang terjadi pada fungsi tersimpan 
Structur : 
CREATE PROCEDURE nama_prosedur ([variabel_parameter[…..]]) 
Begin 
…………. 
isi_prosedure 
…………. 
END 
Variabel_parameter 
[ IN | OUT | INOUT] nama_variabel tipe_variabel
Pada prosedur tersimpan, sebuah variabel parameter 
dibedakan menjadi 3 pilihan : 
1. IN yang berarti bahwa variabel parameter hanya dapat 
digunakan untuk menerima input. Tipe IN merupakan 
nilai default dari variabel parameter 
2. OUT yang menandakan bahwa variabel parameter 
hanya dapat digunakan untuk menyimpan hasil output 
3. INOUT yang berarti bahwa variabel parameter dapat 
menerima input dan juga dapat digunakan untuk 
menyimpan hasil output
Contoh 1 penggunaan prosedur tersimpan : 
1. Buatlah tabel dengan data sebagai berikut dan tentukan 
tipedata serta panjang karakternya sendiri(nama tabel 
karyawan) 
nik nama alamat kota jeniskelam 
in 
101 Ari Jl. Pusri Jakarta Pria 
102 Agus Jl. Kertapati Bandung Pria 
103 Nia Jl. Plaju Bandung Wanita 
104 Iman Jl. KM12 Bandung Pria 
105 Wina Jl. Sako Jakarta Wanita 
106 Feri Jl. Borang Bandung Pria 
107 Yayat Jl. Bukit Jakarta Pria
2. Buatlah prosedur sebagai berikut : 
Mysql > DELIMETER // 
Mysql > CREATE PROCEDURE prosedur1 (a char(35), OUT b INT) 
-> BEGIN 
-> SELECT COUNT(kota) INTO b FROM karyawan 
-> WHERE kota = a; 
-> END 
-> // 
Mysql> DELIMITER ; 
3. Buatlah perintah untuk menjalankan fungsi tersebut diatas 
Mysql> call prosedur1(‘jakarta’,@b); 
Mysql> select @b; 
Pada perintah diatas akan memanggil prosedur1 yang terlebih dahulu sudah 
dibuat ketentuannya yaitu untuk menghitung karyawan yang tinggal di 
jakarta.
Contoh 2 penggunaan prosedur tersimpan : 
Mysql> DELIMITER // 
Mysql> CREATE PROCEDURE prosedur2(a INT, b CHAR(60), c VARCHAR(100), 
d CHAR(10), e CHAR(10)) 
-> BEGIN 
-> INSERT INTO karyawan(nik,nama,alamat,kota,jeniskelamin) 
-> VALUES (a,b,c,d,e); 
-> END 
-> // 
Untuk menjalankan prosedur diatas lakukan pemanggilan sebagai berikut : 
Mysql> CALL prosedur2(‘108’,’nama_anda’,’alamat_anda’,’kota’,’jenkel anda’); 
Maka secara otomatis perintah call prosedur2 akan sama halnya dengan perintah 
insert into dimana, data akan dimasukkan kedalam tabel karyawan
Latihan store procedure 
Buat database penjualan sebagai berikut : 
1. Buat tabel barang dengan struktur berikut 
CREATE TABLE barang (kd_brg CHAR(5), 
nm_brg CHAR(20), 
stok int, 
satuan CHAR(20), 
harga int, 
primary key (kd_brg)); 
Kemudian lakukan pengisian ke tabel dengan data berikut : 
INSERT INTO barang VALUES('K0001','Buku ',100,'Pcs',5000); 
INSERT INTO barang VALUES('K0002','Pesil 2B',200,'Pcs',3000); 
INSERT INTO barang VALUES('K0003','Pengahpus',100,'Pcs',1000); 
INSERT INTO barang VALUES('K0004','Kertas HVS',200,'Rem',30000); 
INSERT INTO barang VALUES('K0005','Gunting kecil',10,'Pcs',6000);
2. Buat table jual dengan struktur berikut : 
CREATE TABLE jual (no_nota char(4), 
tgl date, 
kd_brg CHAR(5), 
jumlah int); 
3. Membuat procedure untuk simpan_jual untuk menggantikan perintah insert 
into ke table jual
4. Membuat procedure mengurangi stok pada table barang secara otomatis 
5. Kemudian lakukan pengisian data ke table jual dengan memanggil 
procedure simpan_jual
Buat trigger untuk memback up data secara otomatis ke tabel 
jual_backup apabila kita melakukan insert data ke table jual
Buat trigger untuk melakukan penghapusan otomatis di 
jual dan table jual_backup
Stored Procedure dan Trigger untuk Penjualan

More Related Content

Similar to Stored Procedure dan Trigger untuk Penjualan

Similar to Stored Procedure dan Trigger untuk Penjualan (20)

Materi my sql part 5
Materi my sql part 5Materi my sql part 5
Materi my sql part 5
 
Modul 07 basisdata
Modul 07 basisdataModul 07 basisdata
Modul 07 basisdata
 
Stored procedure
Stored procedureStored procedure
Stored procedure
 
Laprak sbd
Laprak sbd Laprak sbd
Laprak sbd
 
Prak05 sbd 24010311130069
Prak05 sbd 24010311130069Prak05 sbd 24010311130069
Prak05 sbd 24010311130069
 
Stored Procedure
Stored ProcedureStored Procedure
Stored Procedure
 
Pertemuan 09 (procedure dan function database)
Pertemuan 09 (procedure dan function database)Pertemuan 09 (procedure dan function database)
Pertemuan 09 (procedure dan function database)
 
Pratikum sistem basis data 3
Pratikum sistem basis data 3Pratikum sistem basis data 3
Pratikum sistem basis data 3
 
Praktikum Database Management System
Praktikum Database Management SystemPraktikum Database Management System
Praktikum Database Management System
 
Bab ii keg pembel 6 array
Bab ii keg pembel 6  arrayBab ii keg pembel 6  array
Bab ii keg pembel 6 array
 
Basis data 2
Basis data 2Basis data 2
Basis data 2
 
Algoritma pemrograman 2 - Contoh program"Struct Data Karyawan"
Algoritma pemrograman 2 - Contoh program"Struct Data Karyawan"Algoritma pemrograman 2 - Contoh program"Struct Data Karyawan"
Algoritma pemrograman 2 - Contoh program"Struct Data Karyawan"
 
#7 - Stored Procedure And Function.pptx
#7 - Stored Procedure And Function.pptx#7 - Stored Procedure And Function.pptx
#7 - Stored Procedure And Function.pptx
 
Modul%20 mysql
Modul%20 mysqlModul%20 mysql
Modul%20 mysql
 
Modul mysql
Modul mysqlModul mysql
Modul mysql
 
Membuat databases
Membuat databasesMembuat databases
Membuat databases
 
Ansanwan form sederhana php
Ansanwan form sederhana phpAnsanwan form sederhana php
Ansanwan form sederhana php
 
Laporan praktikum jawaban 10 algoritma(1)
Laporan praktikum jawaban 10 algoritma(1)Laporan praktikum jawaban 10 algoritma(1)
Laporan praktikum jawaban 10 algoritma(1)
 
Pertemuan ARRAY.pptx
Pertemuan ARRAY.pptxPertemuan ARRAY.pptx
Pertemuan ARRAY.pptx
 
PBD- Stored Procedure
PBD- Stored ProcedurePBD- Stored Procedure
PBD- Stored Procedure
 

More from Universitas Bina Darma Palembang

More from Universitas Bina Darma Palembang (20)

30448 pertemuan1
30448 pertemuan130448 pertemuan1
30448 pertemuan1
 
29510 pertemuan18(form method-get-post-dan-session(1))
29510 pertemuan18(form method-get-post-dan-session(1))29510 pertemuan18(form method-get-post-dan-session(1))
29510 pertemuan18(form method-get-post-dan-session(1))
 
28501 pertemuan14(php)
28501 pertemuan14(php)28501 pertemuan14(php)
28501 pertemuan14(php)
 
28500 pertemuan22(header dokumen html dgn tag title)
28500 pertemuan22(header dokumen html dgn tag title)28500 pertemuan22(header dokumen html dgn tag title)
28500 pertemuan22(header dokumen html dgn tag title)
 
25437 pertemuan25(hitcounter)
25437 pertemuan25(hitcounter)25437 pertemuan25(hitcounter)
25437 pertemuan25(hitcounter)
 
23921 pertemuan 3
23921 pertemuan 323921 pertemuan 3
23921 pertemuan 3
 
19313 pertemuan6
19313 pertemuan619313 pertemuan6
19313 pertemuan6
 
18759 pertemuan20(web html editor)
18759 pertemuan20(web html editor)18759 pertemuan20(web html editor)
18759 pertemuan20(web html editor)
 
18040 pertemuan13(css)
18040 pertemuan13(css)18040 pertemuan13(css)
18040 pertemuan13(css)
 
17945 pertemuan5
17945 pertemuan517945 pertemuan5
17945 pertemuan5
 
16406 pertemuan17(konsep basis-data-di-web)
16406 pertemuan17(konsep basis-data-di-web)16406 pertemuan17(konsep basis-data-di-web)
16406 pertemuan17(konsep basis-data-di-web)
 
15294 pertemuan9(eksplorasi &defenisi masalah0
15294 pertemuan9(eksplorasi &defenisi masalah015294 pertemuan9(eksplorasi &defenisi masalah0
15294 pertemuan9(eksplorasi &defenisi masalah0
 
13926 pertemuan4
13926 pertemuan413926 pertemuan4
13926 pertemuan4
 
12738 pertemuan 15(php lanjutan)
12738 pertemuan 15(php lanjutan)12738 pertemuan 15(php lanjutan)
12738 pertemuan 15(php lanjutan)
 
6346 pertemuan21(web statis dengan struktur html)
6346 pertemuan21(web statis dengan struktur html)6346 pertemuan21(web statis dengan struktur html)
6346 pertemuan21(web statis dengan struktur html)
 
5623 pertemuan11(html1)
5623 pertemuan11(html1)5623 pertemuan11(html1)
5623 pertemuan11(html1)
 
4740 pertemuan8(komponen dalam web)
4740 pertemuan8(komponen dalam web)4740 pertemuan8(komponen dalam web)
4740 pertemuan8(komponen dalam web)
 
4075 pertemuan10 (analisa kebutuhan)
4075 pertemuan10 (analisa kebutuhan)4075 pertemuan10 (analisa kebutuhan)
4075 pertemuan10 (analisa kebutuhan)
 
2670 pertemuan12(html lanjut)
2670 pertemuan12(html lanjut)2670 pertemuan12(html lanjut)
2670 pertemuan12(html lanjut)
 
2190 pertemuan24(polling)
2190 pertemuan24(polling)2190 pertemuan24(polling)
2190 pertemuan24(polling)
 

Recently uploaded

BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptxBAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptxchleotiltykeluanan
 
PPT ANEMIA pada remaja maupun dewasapptx
PPT ANEMIA pada remaja maupun dewasapptxPPT ANEMIA pada remaja maupun dewasapptx
PPT ANEMIA pada remaja maupun dewasapptxsitifaiza3
 
Menggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxMenggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxImahMagwa
 
Geologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfGeologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfAuliaAulia63
 
Contoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningContoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningSamFChaerul
 
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxPENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxheru687292
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Shary Armonitha
 
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxmariaboisala21
 
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxzidanlbs25
 

Recently uploaded (9)

BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptxBAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
 
PPT ANEMIA pada remaja maupun dewasapptx
PPT ANEMIA pada remaja maupun dewasapptxPPT ANEMIA pada remaja maupun dewasapptx
PPT ANEMIA pada remaja maupun dewasapptx
 
Menggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxMenggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptx
 
Geologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfGeologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdf
 
Contoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningContoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data mining
 
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxPENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
 
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
 
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
 

Stored Procedure dan Trigger untuk Penjualan

  • 1. Stored Procedure Ade Putra, M.Kom. UNIVERSITAS BINA DARMA 2011
  • 2. Procedure Tersimpan (Stored Procedure) Pada prosedur tersimpan sama halnya dengan fungsi tersimpan yang digunakan untuk meringkas perintah mysql yang akan dijalankan, namun pada prosedur tersimpan ini tidak harus mengembalikan nilai seperti yang terjadi pada fungsi tersimpan Structur : CREATE PROCEDURE nama_prosedur ([variabel_parameter[…..]]) Begin …………. isi_prosedure …………. END Variabel_parameter [ IN | OUT | INOUT] nama_variabel tipe_variabel
  • 3. Pada prosedur tersimpan, sebuah variabel parameter dibedakan menjadi 3 pilihan : 1. IN yang berarti bahwa variabel parameter hanya dapat digunakan untuk menerima input. Tipe IN merupakan nilai default dari variabel parameter 2. OUT yang menandakan bahwa variabel parameter hanya dapat digunakan untuk menyimpan hasil output 3. INOUT yang berarti bahwa variabel parameter dapat menerima input dan juga dapat digunakan untuk menyimpan hasil output
  • 4. Contoh 1 penggunaan prosedur tersimpan : 1. Buatlah tabel dengan data sebagai berikut dan tentukan tipedata serta panjang karakternya sendiri(nama tabel karyawan) nik nama alamat kota jeniskelam in 101 Ari Jl. Pusri Jakarta Pria 102 Agus Jl. Kertapati Bandung Pria 103 Nia Jl. Plaju Bandung Wanita 104 Iman Jl. KM12 Bandung Pria 105 Wina Jl. Sako Jakarta Wanita 106 Feri Jl. Borang Bandung Pria 107 Yayat Jl. Bukit Jakarta Pria
  • 5. 2. Buatlah prosedur sebagai berikut : Mysql > DELIMETER // Mysql > CREATE PROCEDURE prosedur1 (a char(35), OUT b INT) -> BEGIN -> SELECT COUNT(kota) INTO b FROM karyawan -> WHERE kota = a; -> END -> // Mysql> DELIMITER ; 3. Buatlah perintah untuk menjalankan fungsi tersebut diatas Mysql> call prosedur1(‘jakarta’,@b); Mysql> select @b; Pada perintah diatas akan memanggil prosedur1 yang terlebih dahulu sudah dibuat ketentuannya yaitu untuk menghitung karyawan yang tinggal di jakarta.
  • 6. Contoh 2 penggunaan prosedur tersimpan : Mysql> DELIMITER // Mysql> CREATE PROCEDURE prosedur2(a INT, b CHAR(60), c VARCHAR(100), d CHAR(10), e CHAR(10)) -> BEGIN -> INSERT INTO karyawan(nik,nama,alamat,kota,jeniskelamin) -> VALUES (a,b,c,d,e); -> END -> // Untuk menjalankan prosedur diatas lakukan pemanggilan sebagai berikut : Mysql> CALL prosedur2(‘108’,’nama_anda’,’alamat_anda’,’kota’,’jenkel anda’); Maka secara otomatis perintah call prosedur2 akan sama halnya dengan perintah insert into dimana, data akan dimasukkan kedalam tabel karyawan
  • 7. Latihan store procedure Buat database penjualan sebagai berikut : 1. Buat tabel barang dengan struktur berikut CREATE TABLE barang (kd_brg CHAR(5), nm_brg CHAR(20), stok int, satuan CHAR(20), harga int, primary key (kd_brg)); Kemudian lakukan pengisian ke tabel dengan data berikut : INSERT INTO barang VALUES('K0001','Buku ',100,'Pcs',5000); INSERT INTO barang VALUES('K0002','Pesil 2B',200,'Pcs',3000); INSERT INTO barang VALUES('K0003','Pengahpus',100,'Pcs',1000); INSERT INTO barang VALUES('K0004','Kertas HVS',200,'Rem',30000); INSERT INTO barang VALUES('K0005','Gunting kecil',10,'Pcs',6000);
  • 8. 2. Buat table jual dengan struktur berikut : CREATE TABLE jual (no_nota char(4), tgl date, kd_brg CHAR(5), jumlah int); 3. Membuat procedure untuk simpan_jual untuk menggantikan perintah insert into ke table jual
  • 9. 4. Membuat procedure mengurangi stok pada table barang secara otomatis 5. Kemudian lakukan pengisian data ke table jual dengan memanggil procedure simpan_jual
  • 10. Buat trigger untuk memback up data secara otomatis ke tabel jual_backup apabila kita melakukan insert data ke table jual
  • 11. Buat trigger untuk melakukan penghapusan otomatis di jual dan table jual_backup