Deklarasi Variable Dalam Stored Procedure MySQL – Variable adalah suatu objek data yang memiliki nama dan suatu nilai tertentu yang dapat berubah-ubah. Secara sederhana variable adalah “tempat penampung nilai”. Nilai dalam variable tersebut dapat dihasilkan dan berubah-ubah seiring dengan dijalankannya suatu program. Variable dalam stored procedure bersifat lokal dan hanya dapat digunakan dalam stored procedure tersebut. Dalam penggunaan variable dalam stored procedure harus mendeklarasikan variable tersebut sebelum digunakan.

Deklarasi variable stored procedure MySQL

Untuk mendeklarasikan suatu variable dalam stored procedure diperlukan suatu perintah DECLARE. Stuktur dasar dalam mendeklarasikan variable adalah

DECLARE nama_variable tipedata(panjang) DEFAULT nilai;

Penjelasan dari masing-masing perintah tersebut adalah

1. DECLARE berguna untuk menyatakan atau mendefinisikan suatu variable, kondisi, penanganan, dan cursor yang bersifat lokal dalam stored procedure. Penulisannya harus berada diantara bagian tubuh stored procedure yaitu diantara BEGIN dan END.

2. nama_variable ditulis setelah pernyataan DECLARE dan dalam penamaan variable ditulis bebas asalkan nama variable TIDAK SAMA dengan nama parameter dalam stored procedure dan nama kolom atau field dalam table database.

3. tipedata(panjang) harus ditentukan tipe data dan panjang atau ukurannya dan ditulis setelah pendeklarasian nama variable. Tipe data yang dimaksud seperti INT, VARCHAR, TIME, DATE, dll.

4. DEFAULT merupakan pendeklarasian suatu nilai awal pada variable tersebut.

Sebagai contoh dalam pendeklarasian variable sebagai berikut

/* Pendeklarasian hanya satu variable */
DECLARE angka INT DEFAULT 0;

/* Pendeklarasian lebih dari satu variable */
DECLARE angka, hasil, sisa INT DEFAULT 0;

Penjelasan singkat dari contoh diatas adalah dibuat suatu variable dengan nama angka yang memiliki tipe data INT (angka) dengan nilai bawaan atau DEFAULT berupa 0. Sedangkan untuk membuat lebih dari satu variable cukup dipisahkan dengan tanda koma (,) setelah nama variable sebelumnya.

Menetapkan suatu variable

Setelah mendeklarasikan variable, variable tersebut sudah bisa digunakan sesuai dengan kebutuhan yang telah ditentukan. Untuk menetapkan atau memberikan atau mengubah nilai yang baru diperlukan perintah SET. Struktur dasar dalam penggunaannya adalah

SET nama_variable = nilai_baru;

Penjelasan dari struktur diatas adalah

1. SET digunakan untuk inisialisasi variable dengan nilai baru dan menggunakan operator assignment (=) atau (:=).

2. nama_variable harus sama dengan pendeklarasian nama variable sebelumnya untuk mengubah nilai dalam variable tersebut.

3. nilai_baru merupakan nilai baru yang diberikan kepada variable tersebut.

Sebagai contoh dalam penggunaannya adalah

/* Menggunakan tanda = */
DECLARE angka INT DEFAULT 0;
SET angka = 10;

/* Menggunakan tanda := */
DECLARE angka INT DEFAULT 0;
SET angka := 10;

Penjelasan singkat dalam code diatas adalah dibuat suatu variable dengan nama angka yang memiliki angka default 0. Lalu pada baris selanjutnya terdapat perintah SET untuk mengubah nilai dari variable angka dengan value 10. Selain menggunakan SET untuk menetapkan suatu nilai dalam variable dapat menggunakan perintah INTO.

Sebagai contoh secara keseluruhan dalam penggunaannya dalam stored procedure akan dibuat stored procedure bernama tampilAngka dan hitungKaryawan dalam Schema OP.

/* Menggunakan perintah SET */
DELIMITER //
CREATE PROCEDURE tampilAngka()
BEGIN
  DECLARE jumlah INT DEFAULT 0;
  SET angka := 10;
  SELECT angka;
END //

/* Menggunakan perintah INTO */
DELIMITER //
CREATE PROCEDURE hitungKaryawan()
BEGIN
  DECLARE jumlah INT DEFAULT 0;
  SELECT COUNT(*) INTO jumlah FROM employees;
END //
DELIMITER;

Setelah dibuat stored procedure tersebut jika ingin melakukan pemanggilan atau menggunakan stored procedure cukup menggunakan perintah CALL diikuti dengan nama stored procedure.

Happy Coding ^-^