Upload
putra-andry
View
211
Download
6
Embed Size (px)
Citation preview
agus andri putra, ST.
Praktikum sistem basis dataSTORED PROCEDURE
agus andri putra, ST.
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
DEFINISI
agus andri putra, ST.
Persamaan dengan prosedur dlm pemrograman:Menerima parameter input dan mengembalikan beberapa nilai dalam bentuk parameter output ke pemanggil prosedure atau batch.
Berisi statement pemrograman utk operasi dlm database, termasuk memanggil prosedur lainnya.
Mengembali nilai status ke pemanggil prosedur atau batch untuk menunjukkan keberhasilan atau kegagalan (dan alasan untuk kegagalan).
STORED PROCEDURE VS PROCEDURE
agus andri putra, ST.
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.
KELEBIHAN STORED PROCEDURE
agus andri putra, ST.
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
KELEBIHAN STORED PROCEDURE
agus andri putra, ST.
Struktur pendeklarasian stored procedure
DASAR STORED PROCEDURE
agus andri putra, ST.
PersiapanBuat sebuah table untuk menyimpan data
log_user Contoh
CONTOH 1
Tambah tabel
Struktur tabel :- Waktu : datetime- Nama_user :
varchar
agus andri putra, ST.
Procedure yang akan di buat adalah sebuah procedure yang akan digunakan untuk menyimpan informasi login seorang user
Memanggil stored procedur
MEMBUAT PROCEDURE BARU
agus andri putra, ST.
Hasil nya akan terlihat di tabel “ log_user “
MEMBUAT PROCEDURE BARU
agus andri putra, ST.
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
PARAMETER
agus andri putra, ST.
Pembuatan Procedure
Memanggil procedure1. SET @c=0; (deklarasi var c)2. CALL tambahkan (200,80,@c);3. SELECT @c; (menghasilkan nilai 280)
PARAMETER
agus andri putra, ST.
Pernyataan IF Struktur Statement :
PERCABANGAN
agus andri putra, ST.
Kasus Tranfer dan kirim uang antar no Rekening
Dengan ketentuan:Saldo pengirim harus mencukupiRekening pengirim dan penerima harus ada
Update masing-masing rekening sesuai besar transfer
CONTOH KASUS
agus andri putra, ST.
Isi tabel tersebut dengan minimal 3 record :
STRUKTUR TABEL KASUS TRANSFER
agus andri putra, ST.
STORED PROCEDURE SYNTAX
agus andri putra, ST.
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 ?
PEMANGGILAN PROCEDURE
agus andri putra, ST.
Buatlah sebuah stored procedure untuk menentukan nilai mutu dari sebuah tabel nilai akademik dengan ketentuan :
a. Jika nilai >=80 : nilai mutu ‘A’b. Jika nilai >=70 : nilai mutu ‘B’c. Jika nilai >=50 : nilai mutu ‘C’d. Jika nilai >=30 : nilai mutu ‘D’e. Default nilai diluar itu bernilai ‘T’
Silahkan pilih salah satu fungsi pernyataan “IF” atau “CASE”
LATIHAN SP IF-B