Anda di halaman 1dari 8

LAPORAN PRAKTIKUM

SISTEM BASIS DATA LANJUTAN


PERTEMUAN KE-8
FUNCTION & STORED PROCEDURE

DOSEN PEMBIMBING
Irma Handayani,S.Kom.,M.Cs
DISUSUN OLEH

NAMA : Zaki Rusydi


NIM : 5190411124
KELAS : III

INFOMATIKA
SAINS & TEKNOLOGI
UNIVERSITAS TEKNOLOGI YOGYAKARTA
2021
BAB 1
PEMBAHASAN

A. Pembahasan
I. Function : Menghitung Jumlah SKS di Inputkan
Query :

Disini kita menggunakan function. Function merupakan suatu kumpulan perintah atau
statement yang disimpan dan dieksekusi di server MySQL. Function dan stored
procedure saling keterkaitan, tetapi juga memiliki perbedaan. Pada function kita harus
mengembalikan sebuah nilai (reuturns) sedangkan pada procedure tidak mengembanlikan
sebuah nilai. Pada query diatas kita menghitung data pada table matakuliah yang
memiliki jumlah sks yang sama dengan menggunkan COUNT. Query “INTO jumlah_sks
“ berguna untuk nilai return untuk query functions, Query “ WHERE sks=sksmk”
befungsi jika jumlah sks (nama kolom pada table matakuliah) sama dengan sksmk
(parameter function) maka akan menampilkan jumlah sks yang memiliki data yang sama.
Query proses procedure :

Untuk menjalankan function yang telah kita buat yaitu dengan cara “SELECT
nama_function (data_parameter_JikaAda)”. Kita akan melihat jumlah matakuliah yang
memiliki sks = 3.
Hasil :
 Table matakuliah

 Jumlah sks = 3

Seperti yang kita lihat diatas bahwa benar sks = 3 berjumlah 2.


II. Stored Procedure
Stored procedure merupakan sekumpulan perintah SQL yang disuse dalam sebuah
procedure yang memiliki nama dan fungsi tertentu. Stored procedure mempermudah kita
jika melakukan proses query yang dilakukan secara terus menererus seperti query untuk
melakukan insert, dengan stored procedure maka kita dapat menyimpan query tersebut
seperti query insert, update, delete, dan count ke dalam stored procedure dan apabila
dibutuhkan kita tinggal memanggil procedure yang telah kita buat tanpa harus menulis
query insert, update, delete, atau cout terlebih dahulu.
1. Insert
Query :

Diatas merupakan procedure dengan berisikan insert, yang dimana berguna untuk
menginputkan data ke table yang akan dituju tanpa harus menuliskan query insert secara
berulang kali. Seperti yang kita lihat diatas setelah meng create procedure maka langkah
berikutnya kita membuat nama dari procedure yang kita buat seperti “insertMhs”.
Kemudian kita membuat parameter yang sesuai dengan kolom pada table yang akan kita
tuju untuk melakukan proses insert, diatas saya melakukan insert terhadap table
mahasiswa sehingga parameter yang terdapat pada procedure harus sama dengan
parameter yang terdapat di table mahasiswa.

Query melakukan proses procedure :

Untuk menggunakan procedure yang telah kita buat, yaitu dengan cara “CALL
nama_procedure (isi_parameter_JikaAda) “ parameter disni tidak bersifat wajib dan
tergantung kepada query procedure yang kita buat sebelumnya. Karena disini kita
melakukan proses insert tentu saja terdapat sebuah parameter.
Hasil :
 Sebelum melakukan proses insert
 setelah melakukan proses insert

2. Update
Query :

Proses awal procedure dengan menggunakan update masih sama seperti saat membuat
procedure dengan mengguunakan insert seperti penjelasan diatas. Pertama yaitu
penaaman procedure pemberian parameter sesuai dengan table yang dituju, parameter
yang ditulis kita sesuaikan dengan data yang akan kita update. Diatas dapat kita lihat
dalam menulisa query update terdapat query “ SET nama_mhs = nama,
alamat=alamat_mhs” bagian kiri dari symbol “=” merupakan salah satu kolom dari table
yang akan dilakukan proses update sedangakan bagian kanan dari symbol “=” merupakan
parameter dari procedure yang telah dibuat pada tahap awal pembuatan procedure. Query
tersebut memiliki fungsi dimana data lama akan digantikan dengan data baru yang di
inputkan. Sedangkan query “WHERE nim = nimlama” berfungsi sebagai pemberitahu
data apa yang akan digantikan dengan menggunakan kode yang unik (primary key). “IN”
yang terdapat pada parameter berguna untuk menerima sebuah input.
Query proses procedure (update) :

Disni kita akan merubah data nama dan alamat dari nim (primarykey) = 202109. Jika
penulisan nim benar makan data nama dan alamat akan berubah sesuai yang telah kita
inputkan.
Hasil :
 Sebelum update

 Setelah update

Maka data nama_mhs dan alamat dengan nim 202109 telah berubah .
3. Delete
Query :

Brikutnya yaitu kita membuat procedure dengan menggukan delete. Sama seperti
sebelumnya yaitu pemberian nama procedure, menggunakan IN untuk menerima input,
dan parameter sesuai kolom pada table. Karena disini kita akan menghapus sebuah data
maka parameter yang kita gunakan cukup satu saja, diatas saya menggunakan parameter
nim untuk menghapus data yang memiliki nim yang sama. Disini kita tidak harus
menggunakan nim tetapi juga dapat menggunakan parameter lain untuk menghapus data
seperti alamat, jenis kelamin, nama, dll tetapi dianjurkan kita menggunakan parameter
yang unik. Query “WHERE nim=nimlama” jika nim memiliki nilai yang sama dengan
nimlama maka data yang memilki nim tersebut akan dihapus, dan jika tidak sama maka
query akan mengalami error.
Query proses procedure (delete) :

Untuk melakukan proses delete dengan menggunakan procedure yang telah dibuat
sebelumnya maka kita dapat membuat query “ CALL nama_procedure
(data_yang_diHapus) “ jika data sama dengan yang berada didalam table, maka data yang
memiliki data yang sama akan dihapus.
Hasil :
 Sebelum dihapus

 Setelah dihapus

4. Count
Query :

Pada query diatas dapat kita lihat yaitu menggunakan OUT, yang dimana digunakan
untuk mengembalikan suatu nilai dalam stored procedure. Out akan mengeluarkan nilai
saat stored procedure akan dijalankan. Disini juga kita menggunakan procedure dengan
count. Count sendiri adalah menghitung banyaknya data pada suatu table atau kolom.
Jadi dari Query diatas kita akan menghitung jumlah data dari kolom nim pada table
mahasiswa.
Query proses procedure (count) :
Agar count berjalan maka isi pada parameter yaitu menggunakan symbol “@” terlebih
dahulu dengan penamaan yang bebas. Kemudian kita dapat melihat hasil count dengan
cara menggunakan query SELECT “SELECT @nama_DalamKurung”
Hasil :

B. Tugas
1. Buatlah perhitungan denda pengembalian buku menggunakan perintah function. Jumlah
besaran denda adalah Rp.1000,- perhari dihitung dari tanggal harus dikembalikan.
Jawaban :
 Penghitungan denda

 Penginputan tanggal

Hasil :
BAB II
PENUTUP

Kesimpulan
Dalam MySQL terdapat query function dan stored procedure yang dimana merupakan
sebuah kumpulan perintah atau statement yang disimpan dan di eksekusi di server
database Mysql. Dengan adanya function dan stored procedure dalam memproses sebuah
data pada database menjadi lebih efisien. Seperti kita tidak perlu lagi menuliskan query
insert, update, delete, dll berulangkali untuk melakukan proses insert, update, delete, dll
tetapi kita hanya perlu memasukkan query insert, update, delete, dll ke dalam function
ataupun stored procedure. Function dan stored procedure memiliki sebuah perbedaan
yang dimana function memiliki nilai yang harus dikembalikan (return) sedangkan store
procedure tidak memiliki nilai yang harus dikembalikan.

Anda mungkin juga menyukai