SQL II PRAKTIKUM 10
Menguasai Stored Procedure Lingkup Lanjut: Implementasi Multi-Parameter, Kontrol Alur, dan DML pada SQL Server
Stored Procedure merupakan salah satu fitur krusial dalam manajemen database modern. Melalui Stored Procedure, sekumpulan instruksi SQL dapat disimpan di sisi server database dan dieksekusi dengan efisien
1. Parameterisasi Tingkat Lanjut: Mode IN dan OUT
Pada dasarnya, parameter di dalam prosedur bertindak sebagai jembatan penukar nilai antara aplikasi pengguna dan server database
Parameter IN: Bertindak sebagai masukan (default) untuk menyaring data secara dinamis berdasarkan parameter tertentu
. Contohnya adalah menyaring daftar mahasiswa berdasarkan kombinasi Program Studi dan Tahun Masuk . Parameter OUT: Bertindak sebagai penampung atau variabel referensi untuk mengembalikan hasil kalkulasi—seperti fungsi agregat
COUNT,MIN,AVG, atauSUM—ke luar prosedur.
Catatan Analisis: Untuk mengalirkan nilai kalkulasi ke dalam parameter
OUTpada SQL Server, kita menggunakan pola penugasan langsung, seperti:
SELECT @p_count = COUNT(npm) FROM mahasiswa. Saat pengujian ( EXEC), variabel penampung tingkat pengguna (diawali tanda@) wajib dideklarasikan terlebih dahulu untuk menangkap nilai keluaran tersebut.
2. Implementasi Kontrol Alur Logika (IF / ELSEIF / ELSE)
Kontrol alur kondisional digunakan untuk mengarahkan eksekusi query yang berbeda secara dinamis berdasarkan nilai parameter masukan yang diterima
Konversi Grade ke Nilai Matematis: Melalui prosedur
showByGrade, parameter huruf masukan (seperti 'A' atau 'B') dikonversi menjadi rentang logika numerik untuk memfilter kolom IPK secara otomatis. Parameter Berfungsi sebagai Sakelar (Switch Mode): Pada prosedur
showMhsByIpk, parameter bertipeINTdigunakan sebagai sakelar untuk menentukan arah operasi relasional (>=,<, atau pengecekan data kosongIS NULL).
3. Operasi Manipulasi Data (DML) di dalam Prosedur
Abstraksi data menggunakan Stored Procedure tidak hanya berlaku untuk menampilkan data (SELECT), melainkan juga untuk memanipulasi data secara terpusat dan aman
A. Operasi INSERT (tambahDosen)
Saat menambahkan data baris baru, kolom-kolom referensi yang tidak disediakan oleh parameter diisi secara manual menggunakan nilai NULL
B. Operasi UPDATE (bonusIpkTahun)
Prosedur pembaruan data dilakukan dengan ekspresi akumulasi aritmetika yang presisi (SET ipk = ipk + @p_bonus)WHERE ipk IS NOT NULL mutlak ditambahkan agar data yang memang kosong tidak rusak oleh operasi perhitungan aritmetika
C. Operasi DELETE (hapusMhsByStatus)
Mendemonstrasikan penghapusan baris data secara permanen berbasis parameter penunjukSELECT COUNT(*) dapat diletakkan langsung di dalam bodi prosedur sebelum baris END agar pengguna mengetahui jumlah sisa data secara aktual
4. Kendala Teknis dan Solusi Debugging
Dalam proses development script SQL Server, beberapa eror umum yang sering terjadi meliputi:
Typo Koma pada Multi-Agregat: Lupa menuliskan tanda koma di antara fungsi agregat (misalnya antara
COUNTdanROUND) akan memicu syntax error karena sistem membacanya sebagai alias yang tidak valid. Ketidaksesuaian Nama Variabel: Hasil keluaran sering kali bernilai kosong (
NULL) akibat adanya ketidaksesuaian nama antara variabel yang diisi saatEXECdengan variabel yang dipanggil saatSELECT. Penyeragaman nama variabel mutlak diperlukan .
Kesimpulan
Pemanfaatan Stored Procedure lingkup lanjut terbukti mampu memindahkan logika pemrograman yang kompleks dari sisi aplikasi ke sisi server basis dataOUT sangat efektif untuk merangkum kalkulasi agregat INSERT, UPDATE, DELETE) di dalam prosedur memberikan lapisan keamanan dan abstraksi data yang jauh lebih baik bagi arsitektur database
Referensi Akademik:
Politeknik Negeri Lampung. 2026. Materi Praktikum Sistem Basis Data - Stored Procedure II.
Komentar
Posting Komentar