STORED PROCEDURE

agus andri putra, ST.

Praktikum
sistem basis
data
DEFINISI
 Stored Procedure adalah program yang disimpan
dalam database dan dikompilasi bila digunakan
 Dalam Oracle, dapat ditulis dalam PL / SQL atau Java
 Dalam SQL Server, dapat ditulis dalam Transact-SQL

 Stored procedure adalah sekumpulan perintah SQL yang

disusun dalam sebuah procedure (mirip dengan pemograman
biasa) yang mempunyai nama dan kegunaan tertentu

 Stored Procedure yang disimpan dapat dipanggil dari
 Program yang ditulis dalam bahasa standar, misalnya : Java, C
#
 Scripting bahasa, misalnya: JavaScript, VBScript
 SQL command prompt, misalnya: sqlcmd, SQL Plus, Query
Analyzer
agus andri putra, ST.
STORED PROCEDURE VS PROCEDURE
Persamaan dengan prosedur dlm
pemrograman:
 Menerima parameter input dan mengembalikan
beberapa nilai dalam bentuk parameter output ke
pemanggil prosedur atau batch.
 Berisi statement pemrograman untuk operasi dlm
database, termasuk memanggil prosedur lainnya.
 Mengembali nilai status ke pemanggil prosedur atau
batch untuk menunjukkan keberhasilan atau
kegagalan (dan alasan untuk kegagalan).
agus andri putra, ST.
KELEBIHAN STORED PROCEDURE
Keamanan lebih
 stored procedure selalu tersimpan pada database
server
 Memberikan grant user permission utk menjalankan
SP

Mengurangi lalu lintas jaringan
 SP dapat mengurangi query SQL panjang menjadi
satu baris yang ditransmisikan sehingga mengurangi
lalu lintas client-server.
agus andri putra, ST.
KELEBIHAN STORED PROCEDURE
 Waktu Eksekusi lebih cepat
 Bila perlu T-SQL yang banyak dan berulang-ulang, maka SP
bisa lebih cepat drpd batch T-SQL code. SP dicompile sekali,
disimpan dalam memory dan digunakan untuk pemanggilan
berikutnya (tidak perlu dikompilasi ulang). SQL dapat
dioptimasikan oleh DBMS compiler

 Berbagi-pakai kode modular berimbas pada:
 Mengurangi pekerjaan berlebih – penggunaan ulang kode
secara efisien
 Standarisasi pemrosesan
 Spesialisasi antara developer
agus andri putra, ST.
DASAR STORED PROCEDURE
 Struktur pendeklarasian stored procedure

agus andri putra, ST.
CONTOH 1
 Persiapan
 Buat sebuah table untuk menyimpan data log_user
 Contoh

Struktur tabel :
- Waktu : datetime
- Nama_user : varchar

Tambah tabel
agus andri putra, ST.
MEMBUAT PROCEDURE BARU
 Procedure yang akan di buat adalah sebuah
procedure yang akan digunakan untuk menyimpan
informasi login seorang user

 Memanggil stored procedur

agus andri putra, ST.
MEMBUAT PROCEDURE BARU
 Hasil nya akan terlihat di tabel “ log_user “

agus andri putra, ST.
PARAMETER
Parameter yang digunakan dalam stored
procedure terdiri dari 3 jenis yaitu :
 Parameter IN. Parameter jenis ini digunakan hanya
untuk input
 Parameter OUT. Parameter jenis ini digunakan untuk
mengeluarkan hasil proses dalam stored procedure
agar bisa diterima di luar prosedur. Dan harus
menggunakan variable
 Parameter INOUT. Gabungan dari IN dan OUT, yaitu
dapat mengirim dan menerima nilai variable, dan
parameter ini hanya boleh menggunakan variable
agus andri putra, ST.
PARAMETER
 Pembuatan Procedure

 Memanggil procedure
1. SET @c=0; (deklarasi var c)
2. CALL tambahkan (200,80,@c);
3. SELECT @c; (menghasilkan nilai 280)
agus andri putra, ST.
PERCABANGAN
 Pernyataan IF
 Struktur Statement :

agus andri putra, ST.
CONTOH KASUS
Kasus Tranfer dan kirim uang antar no
Rekening
Dengan ketentuan:
Saldo pengirim harus mencukupi
Rekening pengirim dan penerima harus ada
Update masing-masing rekening sesuai besar
transfer

agus andri putra, ST.
STRUKTUR TABEL KASUS TRANSFER

 Isi tabel tersebut dengan minimal 3 record :

agus andri putra, ST.
STORED PROCEDURE SYNTAX

agus andri putra, ST.
PEMANGGILAN PROCEDURE
 Contoh pemanggilan 1 transfer

 Untuk selanjutnya silahkan coba mentransfer sejumlah uang
dari rekening yang ada pada tabel yang telah di buat
sebelumnya, apa yang terjadi ?

agus andri putra, ST.
LATIHAN SP IF-A
 Buatlah sebuah stored procedure untuk perulangan
menghitung jumlah deret (1+2+3+...+N)
 Dengan ketentuan:
a. Nilai akan terus bertambah sesuai angka yang kita
isi kan contoh : isi deret 5 maka (1+2+3+4+5 = 15)
b. Angka yang di masukkan bersifat dinamis
 Silahkan pilih salah satu fungsi pernyataan
pengulangan “REPEAT” atau “WHILE”
contoh syntax tampil

agus andri putra, ST.
FORMAT LAPORAN HASIL PRAKTIKUM
TUGAS :
1. Lampirkan dan tulis kembali apa yang telah dikerjakan
pada saat praktikum pada file document laporan kalian
2. Kerjakan soal latihan tersebut, dan print screen syntax
maupun hasilnya
3. Lampirkan juga database yang telah dibuat oleh kalian
4. Berikan keterangan yang lengkap pada hasil laporan
kalian

agus andri putra, ST.
KETERANGAN SLIDE
SLIDE DAN SOAL INI BERLAKU UNTUK 2 PERTEMUAN
Untuk kelas A :
- 9 Oktober 2013
- 16 Oktober 2013
Hasil Tugas:
Silahkan kirim ke alamat:
praksibadat@gmail.com
Subject : prak_sp1(spasi)nama_kelas_nim
Contoh : prak_sp1 agung_ifA_201000008

Pengiriman paling lambat tanggal :
19 Oktober 2013 Pukul 23:59 WIB
agus andri putra, ST.

Stored Procedure

  • 1.
    STORED PROCEDURE agus andriputra, ST. Praktikum sistem basis data
  • 2.
    DEFINISI  Stored Procedureadalah program yang disimpan dalam database dan dikompilasi bila digunakan  Dalam Oracle, dapat ditulis dalam PL / SQL atau Java  Dalam SQL Server, dapat ditulis dalam Transact-SQL  Stored procedure adalah sekumpulan perintah SQL yang disusun dalam sebuah procedure (mirip dengan pemograman biasa) yang mempunyai nama dan kegunaan tertentu  Stored Procedure yang disimpan dapat dipanggil dari  Program yang ditulis dalam bahasa standar, misalnya : Java, C #  Scripting bahasa, misalnya: JavaScript, VBScript  SQL command prompt, misalnya: sqlcmd, SQL Plus, Query Analyzer agus andri putra, ST.
  • 3.
    STORED PROCEDURE VSPROCEDURE Persamaan dengan prosedur dlm pemrograman:  Menerima parameter input dan mengembalikan beberapa nilai dalam bentuk parameter output ke pemanggil prosedur atau batch.  Berisi statement pemrograman untuk operasi dlm database, termasuk memanggil prosedur lainnya.  Mengembali nilai status ke pemanggil prosedur atau batch untuk menunjukkan keberhasilan atau kegagalan (dan alasan untuk kegagalan). agus andri putra, ST.
  • 4.
    KELEBIHAN STORED PROCEDURE Keamananlebih  stored procedure selalu tersimpan pada database server  Memberikan grant user permission utk menjalankan SP Mengurangi lalu lintas jaringan  SP dapat mengurangi query SQL panjang menjadi satu baris yang ditransmisikan sehingga mengurangi lalu lintas client-server. agus andri putra, ST.
  • 5.
    KELEBIHAN STORED PROCEDURE Waktu Eksekusi lebih cepat  Bila perlu T-SQL yang banyak dan berulang-ulang, maka SP bisa lebih cepat drpd batch T-SQL code. SP dicompile sekali, disimpan dalam memory dan digunakan untuk pemanggilan berikutnya (tidak perlu dikompilasi ulang). SQL dapat dioptimasikan oleh DBMS compiler  Berbagi-pakai kode modular berimbas pada:  Mengurangi pekerjaan berlebih – penggunaan ulang kode secara efisien  Standarisasi pemrosesan  Spesialisasi antara developer agus andri putra, ST.
  • 6.
    DASAR STORED PROCEDURE Struktur pendeklarasian stored procedure agus andri putra, ST.
  • 7.
    CONTOH 1  Persiapan Buat sebuah table untuk menyimpan data log_user  Contoh Struktur tabel : - Waktu : datetime - Nama_user : varchar Tambah tabel agus andri putra, ST.
  • 8.
    MEMBUAT PROCEDURE BARU Procedure yang akan di buat adalah sebuah procedure yang akan digunakan untuk menyimpan informasi login seorang user  Memanggil stored procedur agus andri putra, ST.
  • 9.
    MEMBUAT PROCEDURE BARU Hasil nya akan terlihat di tabel “ log_user “ agus andri putra, ST.
  • 10.
    PARAMETER Parameter yang digunakandalam stored procedure terdiri dari 3 jenis yaitu :  Parameter IN. Parameter jenis ini digunakan hanya untuk input  Parameter OUT. Parameter jenis ini digunakan untuk mengeluarkan hasil proses dalam stored procedure agar bisa diterima di luar prosedur. Dan harus menggunakan variable  Parameter INOUT. Gabungan dari IN dan OUT, yaitu dapat mengirim dan menerima nilai variable, dan parameter ini hanya boleh menggunakan variable agus andri putra, ST.
  • 11.
    PARAMETER  Pembuatan Procedure Memanggil procedure 1. SET @c=0; (deklarasi var c) 2. CALL tambahkan (200,80,@c); 3. SELECT @c; (menghasilkan nilai 280) agus andri putra, ST.
  • 12.
    PERCABANGAN  Pernyataan IF Struktur Statement : agus andri putra, ST.
  • 13.
    CONTOH KASUS Kasus Tranferdan kirim uang antar no Rekening Dengan ketentuan: Saldo pengirim harus mencukupi Rekening pengirim dan penerima harus ada Update masing-masing rekening sesuai besar transfer agus andri putra, ST.
  • 14.
    STRUKTUR TABEL KASUSTRANSFER  Isi tabel tersebut dengan minimal 3 record : agus andri putra, ST.
  • 15.
  • 16.
    PEMANGGILAN PROCEDURE  Contohpemanggilan 1 transfer  Untuk selanjutnya silahkan coba mentransfer sejumlah uang dari rekening yang ada pada tabel yang telah di buat sebelumnya, apa yang terjadi ? agus andri putra, ST.
  • 17.
    LATIHAN SP IF-A Buatlah sebuah stored procedure untuk perulangan menghitung jumlah deret (1+2+3+...+N)  Dengan ketentuan: a. Nilai akan terus bertambah sesuai angka yang kita isi kan contoh : isi deret 5 maka (1+2+3+4+5 = 15) b. Angka yang di masukkan bersifat dinamis  Silahkan pilih salah satu fungsi pernyataan pengulangan “REPEAT” atau “WHILE” contoh syntax tampil agus andri putra, ST.
  • 18.
    FORMAT LAPORAN HASILPRAKTIKUM TUGAS : 1. Lampirkan dan tulis kembali apa yang telah dikerjakan pada saat praktikum pada file document laporan kalian 2. Kerjakan soal latihan tersebut, dan print screen syntax maupun hasilnya 3. Lampirkan juga database yang telah dibuat oleh kalian 4. Berikan keterangan yang lengkap pada hasil laporan kalian agus andri putra, ST.
  • 19.
    KETERANGAN SLIDE SLIDE DANSOAL INI BERLAKU UNTUK 2 PERTEMUAN Untuk kelas A : - 9 Oktober 2013 - 16 Oktober 2013 Hasil Tugas: Silahkan kirim ke alamat: praksibadat@gmail.com Subject : prak_sp1(spasi)nama_kelas_nim Contoh : prak_sp1 agung_ifA_201000008 Pengiriman paling lambat tanggal : 19 Oktober 2013 Pukul 23:59 WIB agus andri putra, ST.