Farhan
2211082008
Trpl 1A
2023
A. Landasan Teori
Didalam database terdapat istilah penting yang bernama stored
procedure. Stored procedure ini merupakan suatu blok program yang dapat
dipanggil secara berulang-ulang dalam bentuk script. Dengan
menggunakan stored procedure maka seluruh aplikasi akan terdistribusi
dan ketika mengeksekusi satu perintah CALL aplikasi dapat langsung
membentuk sejumlah task yang dapat berjalan di dalam server. Lebih
jelasnya, stored procedure ini akan mempersingkat pemrograman
karena programmer hanya perlu memanggil stored procedure dengan
parameternya tanpa perlu mengetikkan syntax SQL yang panjang. Stored
procedure didalam Oracle menawarkan beberapa keuntungan di
bidang development, integrity, security, performance, dan memory allocation.
Performance:
Stored procedure dikompilasi sebanyak satu kali dan disimpan dalam bentuk
yang dapat dieksekusi sehingga pemanggilan procedure akan menjadi cepat
dan efisien.
Scalability
Stored procedure meningkatkan skalabilitas dengan mengisolasi pemrosesan
aplikasi di Selain itu, automatic dependency tracking membantu dalam
mengembangkan scalable application
Maintainability
Interoperability
Replication
Dengan menggunakan Oracle Advanced Replication, stored procedure dapat
direplikasi dari satu instance Oracle Database ke yang lain.
Parameter yang digunsksn dalam stored procedure terdiri dari 3 jenis yaitu :
- Paremeter IN. Parameter jenis ini digunakan hanya untuk input. Jika
parameter ini diubah nilainya di dalam stored procedure, maka tidak akan
mempengaruhi nilai variablenya setelah stored procedure dieksekusi.
Parmeter ini boleh dari variable atau nilai langsung.
- Parameter OUT. Parameter jenis ini digunakan mengeluarkan hasil proses
dalam stored procedure agar bisa diterima di luar procedure. Paramter ini
hanya boleh menggunakan variable.
- Parameter INOUT. Gabungan dari IN dan OUT. Dapat mengirim dan
menerima nilai variable. Paremeter ini hanya boleh menggunakan variable
- SELECT INTO digunakan untuk mengambil data dari sebuah query, dan
menyimpan hasil querynya ke suatu variable.
variabel juga dapat menyimpan jumlah data dalam suatu data Contoh
:
select count(*) INTO @jml_data from products;
STORED PROCEDURE
Format :
DELIMITER //
CREATE PROCEDURE nama_procedure(parameter1, parameter2,...)
BEGIN
.....
.....
.....
END
DELIMITER
D. Contoh Soal
1) Buatlah procedure untuk menampilkan productname yang dibeli oleh
DELIMITER $$
BEGIN
END $$
DELIMITER ;
CALL mini_caravy();
variabel tertentu
Query :
DELIMITER $$
BEGIN
SET jml_emp = 3;
FROM employees
GROUP BY officeCode
END $$
DELIMITER ;
CALL jml_emp();
3) Buatlah procedure untuk melakukan pengecekan terhadap buyprice product
dengan productname The Titanic.Keterangan dimuat dalam sebuah variable
Jika buyprice paling banyak 30 maka keterangannya 'Product Murah'
buyprice diatas 30 hingga 60 maka keterangannya 'Product Biasa' buyprice
diatas 60 keterangannya 'Product Mahal'
Query 1 :
DELIMITER $$
BEGIN
SELECT CASE
END AS keterangan2
INTO keterangan
FROM products
SELECT keterangan;
END $$
DELIMITER ;
CALL keterangan_buyprice();
Query 2 :
DELIMITER $$
BEGIN
END IF;
SELECT keterangan;
END$$
DELIMITER ;
CALL belititanic();
4) Buatlah procedure yang digunakan untuk menambahkan data offices dengan
Query :
DELIMITER //
IN p_kota VARCHAR(50),
IN p_kode_kantor VARCHAR(10))
BEGIN
END //
DELIMITER ;
Query :
DELIMITER $$
IN customernumber INT,
OUT customer_level VARCHAR(30))
BEGIN
SELECT
CASE
END AS keterangan
INTO customer_level
FROM customers
LIMIT 1;
END $$
DELIMITER ;
Query :
DELIMITER $$
BEGIN
SELECT CONCAT(contactFirstName, ' ', contactLastName) AS
FullName, addressLine1 AS alamat, phone AS nomor_telepon, city,
state
FROM classicmodels.customers;
END $$
DELIMITER ;
CALL customers_show();
7) Buatlah procedure product_count untuk menampilkan banyaknya product
berdasarkan jenisnya(product_line) dari table products. Tampilkan hanya
untuk product yang jumlahnya diatas 10. Jumlah product diatur dalam
sebuah variabel.
Query :
DELIMITER $$
BEGIN
FROM classicmodels.products
GROUP BY productLine
END $$
DELIMITER ;
CALL product_count();
E.Kesimpulan Dalam praktikum modul 7 Store procedur dapat disimpulkan
bahwa :
•
Stored procedure memiliki 3 parameter, antara lain: IN, OUT, dan INOUT
E. Referensi
Ctt waktu praktek
https://sis.binus.ac.id/2020/10/28/kegunaan-stored-procedure-pada-oracle-
database/
https://www.geriatama.com/2021/11/mysql-membuat-stored-
procedurepart5.html#:~:text=Jadi%2C%20Apa%20yang%20dimaksud
%20stored,%2C%
20update%2C%20dan%20delete.
https://elib.unikom.ac.id/files/disk1/370/jbptunikompp-gdl-andriherya-18491-
12-pertemua-e.pdf
http://rafieaza.blogspot.co.id/2011/09/stored-procedures-functions-dan-
trigger.html,