📚

Panduan Membuat Stored Procedure di PL/SQL

Apr 29, 2025

Catatan Kuliah: Membuat Stored Procedure di PL/SQL

Pengantar

  • Assalamualaikum, pembicara: Sound Tosanjaya
  • Tema: Membuat Stored Procedure di PL/SQL

Definisi Stored Procedure

  • Stored Procedure: Sebuah subprogram yang disimpan di dalam database.
  • Perbandingan dengan Anonymous Block:
    • Anonymous Block: Tidak tersimpan di database, hanya bisa dieksekusi sekali.
    • Stored Procedure: Tersimpan dan dapat dipanggil berulang kali.

Struktur Stored Procedure

  • Subprogram dibagi menjadi dua:
    1. Stored Procedure
    2. Stored Function

Struktur Dasar

  • Format dasar untuk membuat Stored Procedure: CREATE OR REPLACE PROCEDURE nama_prosedur IS/AS BEGIN -- kode eksekusi END;
  • Parameter: Dapat ditambahkan jika dibutuhkan.
  • Keterangan:
    • CREATE OR REPLACE: Wajib diisi untuk membuat atau memperbarui prosedur.
    • IS/AS: Salah satu dari dua kata kunci ini harus digunakan.

Komponen Penting

  • Variabel: Dapat dideklarasikan seperti di Anonymous Block.
  • Eksekusi: Dalam bagian BEGIN ... END, tuliskan statement yang ingin dieksekusi.

Cara Memanggil Stored Procedure

  • Memanggil prosedur dilakukan dengan perintah: EXECUTE nama_prosedur;
  • Ini berbeda dengan Anonymous Block yang dieksekusi langsung.

Keunggulan Stored Procedure

  • Dapat digunakan ulang, mudah untuk pengelolaan dan pemanggilan.
  • Dapat memberikan privilege kepada pengguna tertentu.
  • Dapat mengembalikan nilai melalui parameter.

Perbedaan Antara Stored Procedure dan Anonymous Block

AspekStored ProcedureAnonymous Block
Tersimpan di DatabaseYaTidak
NamaMemiliki namaTidak tetap
Penggunaan UlangDapat digunakan berulang-ulangSekali saja
Mengembalikan NilaiBisa (dengan parameter OUT)Tidak
ParameterDapat memiliki parameterTidak

Contoh Pembuatan Stored Procedure

  1. Membuat Stored Procedure Sederhana: CREATE OR REPLACE PROCEDURE contoh_prosedur IS BEGIN DBMS_OUTPUT.PUT_LINE('Assalamualaikum'); END;
  2. Menambahkan Parameter: CREATE OR REPLACE PROCEDURE contoh_prosedur_dengan_parameter IS v_nama VARCHAR2(30) DEFAULT 'Budi'; BEGIN DBMS_OUTPUT.PUT_LINE('Assalamualaikum ' || v_nama); END;

Eksekusi dan Pengujian

  • Untuk mengeksekusi prosedur, gunakan: EXECUTE contoh_prosedur;
  • Pastikan untuk memeriksa hasil dan error jika ada.

Kesimpulan

  • Stored Procedure sangat berguna dalam pengembangan aplikasi database untuk efisiensi dan pengelolaan yang lebih baik.
  • Penting untuk memahami struktur dan cara pemanggilan agar dapat memanfaatkannya secara optimal.