Blok Modular PLSQL Stored Procedure Stor PDF
Blok Modular PLSQL Stored Procedure Stor PDF
[MI2183]-[2012-2013]#[K1.V1]
1 IDENTITAS
Kajian
Blok Modular PL/SQL
Topik
Blok modular PL/SQL (Stored Procedure & Stored Function)
Referensi
[1] Oracle Database 10g: Develop PL/SQL Program Units volume 1 Student Guide
[2] Benjamin Rosenzweig, Elena Silvestrova. Oracle PL/SQL by Example. Prentice Hall PTR
Kompetensi Utama
Memahami konsep Modular PL/SQL
Mampu membuat blok Stored Procedure PL/SQL dengan dan tanpa parameter
Mampu membuat blok Stored Function PL/SQL dengan dan tanpa parameter
Mampu mengeksekusi Stored Procedure & Stored Function dari SQL Plus
Lama Pengerjaan
4 x 30 menit
Jenis Pengerjaan *(bisa dipilih lebih dari 1)
Individu Kelompok Mandiri Terbimbing
2 PERTANYAAN PENDAHULUAN
Berisi daftar pertanyaan pendahuluan untuk bahan eksplorasi mahasiswa sebelum memulai perkuliahan.
4. Bagaimanakah cara melihat Stored Procedure & Stored Function yang ada pada database Oracle ?
5. Dapatkah Stored Procedure dan Stored Function memiliki parameter input atau parameter output ?
6. Bagaimana melakukan eksekusi Stored Procedure dan Stored Function di lingkungan SQL Plus ?
3 RINGKASAN TEORI
Blok Modular PL/SQL merupakan blok dari bahasa pemrograman PL/SQL dimana terjadi pengelompokkan baris-
baris koding menjadi modul. Contoh dari modul pada PL/SQL adalah Stored Procedures dan Stored Functions.
memiliki parameter input ataupun tidak memiliki parameter. Parameter pada stored procedures dapat berupa
input, output maupun gabungan input dan output. Seperti halnya blok non-modular PL/SQL, stored procedures
mampu menangani pesan kesalahan yaitu dengan Exception Handling. Stored Procedures dapat berdiri sendiri ,
digunakan bersama dengan stored procedures lainnya maupun digunakan dengan Stored Functions.
Pada exercise workbook ini mahasiswa akan mempelajari dan melakukan praktikum untuk membuat, menghapus,
merubah stored procedures baik dengan menggunakan parameter maupun tanpa menggunakan parameter.
Parameter pada stored procedure ada 3 yaitu :
- IN, digunakan untuk menerima dan menyimpan nilai inputan dari luar stored procedures
- OUT, digunakan untuk menyimpan nilai hasil proses dari stored procedures yang akan ditampilkan
- INOUT, dapat berfungsi sebagai IN dan OUT
Stored Procedures sangat berguna ketika diterapkan pada aplikasi karena memudahkan pembuat program untuk
melakukan perbaikan ketika ditemukan suatu kesalahan pada program yang dibuatnya.
- Kalimat CREATE PROCEDURE bertujuan untuk membuat sebuah stored procedures pada PL/SQL.
- [OR REPLACE] digunakan jika pembuat program akan melakukan perubahan pada stored procedure yang
telah dibuat
- [mode] merupakan jenis dari parameter apakah IN, OUT atau INOUT
- Datatype merupakan tipe data, dapat berupa tipe data skalar maupun tipe data reference
- IS | AS merupakan tanda pemisah antara header stored procedure dan isi dari stored procedure, gunakan
salah satu saja
- --actions; berisikan baris-baris koding PL/SQL dapat berupa runtunan, pemilihan, perulangan maupun
perintah DML.
- END [procedure_name]; merupakan tanda akhir dari struktur stored procedures yang di buat, dapat juga
ditambahkan pada baris selanjutnya tanda garis miring /.
Untuk melakukan eksekusi pada stored procedure coba ketikkan perintah berikut :
EXECUTE coba
Jika tidak tampil output program pastikan bahwa SERVEROUTPUT statusnya ON.
Pada Stored Procedure terdapat 3 jenis mode parameter, yaitu IN, OUT dan IN OUT.
Mode parameter IN merupakan mode default dari stored procedure, maksudnya walaupun tidak
diketikkan secara otomatis akan diberikan parameter IN pada stored procedure yang di buat. Mode
EXERCISE WORKBOOK
[MI2183]-[2012-2013]#[K1.V1]
parameter IN menerima dan menyimpan nilai inputan yang diberikan kepada stored procedure ketika
stored procedure dijalankan.
Mode parameter OUT berfungsi untuk menampung hasil nilai pengolahan dari stored procedure, nilai ini
nantinya akan ditampilkan atau diproses pada blok PL/SQL lain (stored procedure lain) atau diproses
dengan bahasa pemrograman lain (misal: PHP).
Mode parameter IN OUT merupakan mode kombinasi dari 2 mode sebelumnya. Pada mode ini parameter
yang menggunakan mode IN OUT dapat menerima dan menampung nilai dari luar stored procedure
ketika dijalankan maupun menerima dan menampung nilai dari hasil pengolahan stored procedure itu
sendiri.
Parameter pada stored procedure dapat menggunakan tipe data :
skalar
%TYPE
%ROWTYPE
3.1.4.1 Parameter IN
Berikut ini contoh penggunaan mode parameter IN pada stored procedure dan cara eksekusinya :
EXERCISE WORKBOOK
[MI2183]-[2012-2013]#[K1.V1]
- Kalimat CREATE FUNCTION bertujuan untuk membuat sebuah stored function pada PL/SQL.
- [OR REPLACE] digunakan jika pembuat program akan melakukan perubahan pada stored function yang
telah dibuat
- [mode] merupakan jenis dari parameter apakah IN, OUT atau INOUT
EXERCISE WORKBOOK
[MI2183]-[2012-2013]#[K1.V1]
- Datatype merupakan tipe data, dapat berupa tipe data skalar maupun tipe data reference
- RETURN datatype berfungsi sebagai deklarasi untuk mengembalikan tipe data tertentu. Tipe data disini
harus tanpa ada keterangan panjang karakter/digit angka.
- IS | AS merupakan tanda pemisah antara header stored function dan isi dari stored function, gunakan
salah satu saja
- --actions; berisikan baris-baris koding PL/SQL dapat berupa runtunan, pemilihan, perulangan maupun
perintah DML.
- RETURN expression mengembalikan nilai suatu variabel tertentu yang akan ditampilkan
- END [function_name]; merupakan tanda akhir dari struktur stored function yang di buat, dapat juga
ditambahkan pada baris selanjutnya tanda garis miring /.
EXERCISE WORKBOOK
[MI2183]-[2012-2013]#[K1.V1]
Function pada Oracle dapat digunakan untuk mengisi nilai suatu variabel
4 STUDI KASUS
Buat user dengan nama latihan, buat tabel sesuai dengan diagram relasi antar tabel pada file
1_Studi_Kasus_Belajar_Mahasiswa.docx. Isikan nilai pada tabel-tabel sesuai dengan isian pada file tersebut.
a. Tabel Kelas.
i. Ketika di eksekusi tampil informasi seluruh informasi kode kelas, nama kelas, kapasitas.
Tampilkan jumlah kelas dari masing-masing program studi.
EXECUTE input(6,PIS-11-01,37);
2. Stored Function
a. Buatlah fungsi untuk menghitung jumlah kelas pada program studi MI pada tabel Kelas. Eksekusi dari
SQL*Plus dan query SQL !
b. Buatlah fungsi untuk menghitung jumlah mahasiswa program studi MI, gunakan fungsi sebelumnya !