Variabel Pada PL/SQL

Apa itu Variabel


Variabel adalah salah satu lokasi di memori yang digunakan untuk menyimpan program sehingga dapat dimanipulasi nilainya.

Setiap variabel di PL/SQL harus mempunyai tipe data. Kita harus memberikan tipe data yang sesuai pada variabel yang akan kita buat.

Deklarasi Variabel


Setiap variabel yang akan digunakan dalam program PL/SQL harus terlebih dahulu di deklarasikan. Pertanyaannya, bagaimana cara mendeklarasikan variabel di PL/SQL?

Di bawah ini adalah sintak dasar deklarasi variabel di PL/SQL:

nama_variabel [CONSTANT] tipe_data [NOT NULL] [:= | DEFAULT nilai_awal]

Penjelasan sintak:

  • nama_variabel adalah nama variabel yang akan digunakan
  • [KONSTANTA] adalah kata kunci (keyword) apabila kita mendeklarasikan variabel sebagai konstanta.
  • tipe_data adalah tipe data yang akan digunakan pada variabel.
  • := adalah assigment operator
  • DEFAULT nilai_awal adalah nilai awal (initial value) yang akan diberikan pada variabel

Inisialisasi Variabel


Sebelum variabel digunakan, Anda harus menginisialisasi terlebih dahulu. Inisialisasi adalah proses pemberian nilai pada suatu variabel.

Anda dapat menggunakan 2 cara dalam memberikan nilai variabel pada PL/SQL, yaitu:

  1. Menggunakan assigment operator ( := )
  2. Menggunakan keyword DEFAULT

Sebagai contoh

vNama VARCHAR2(50) := 'Otong';
vJurusan VARCHAR2(50) DEFAULT 'Teknik Informatika';

Contoh Program


Di bawah ini adalah contoh penggunaan variabel pada program PL/SQL:

DECLARE
  vNama VARCHAR2(50);
  vGender VARCHAR2(50);
  vAlamat VARCHAR2(50);
  vJurusan VARCHAR2(50) NOT NULL DEFAULT 'Teknik Informatika';
  vIPK NUMBER(3,2);
BEGIN
  DBMS_OUTPUT.PUT_LINE('**********************************************');
  DBMS_OUTPUT.PUT_LINE('Program menampilkan data mahasiswa informatika');
  DBMS_OUTPUT.PUT_LINE('**********************************************');
  
  vNama := 'Nursalim';
  vGender := 'Laki Laki';
  vAlamat := 'Jakarta';
  vIPK := 3.75;
  
  DBMS_OUTPUT.PUT_LINE('Nama : '||vNama);
  DBMS_OUTPUT.PUT_LINE('Jenis Kelamin : '||vGender);
  DBMS_OUTPUT.PUT_LINE('Alamat : '||vAlamat);
  DBMS_OUTPUT.PUT_LINE('Jurusan : '||vJurusan);
  DBMS_OUTPUT.PUT_LINE('IPK : '||vIpk);
END;

Output

Coba Anda jalankan program PL/SQL diatas, maka akan menampilkan output seperti di bawah ini:

**********************************************
Program menampilkan data mahasiswa informatika
**********************************************
Nama : Nursalim
Jenis Kelamin : Laki Laki
Alamat : Jakarta
Jurusan : Teknik Informatika
IPK : 3,75

PL/SQL procedure successfully completed.

Variabel Scope


Ada 2 macam tipe variabel pada program PL/SQL, yaitu:
  • Global Variabel
    Global Variabel adalah variabel yang dapat diakses oleh seluruh blok di dalam PLSQL.

  • Local Variabel
    LOcal Variabel adalah variabel yang dapat diakses HANYA oleh blok itu sendiri.
Agar lebih jelas, Anda dapat melihat contoh program di bawah ini:

DECLARE
  -- Global Variabel
  
  vNama VARCHAR2(50);
  vGender VARCHAR2(50);
  vAlamat VARCHAR2(50);
  vJurusan VARCHAR2(50) NOT NULL DEFAULT 'Teknik Informatika';
  vIPK NUMBER(3,2);
BEGIN
  
  vNama := 'Nursalim';
  vGender := 'Laki Laki';
  vAlamat := 'Jakarta';
  vIPK := 3.75;
  
  DBMS_OUTPUT.PUT_LINE('Nama : '||vNama);
  DBMS_OUTPUT.PUT_LINE('Jenis Kelamin : '||vGender);
  DBMS_OUTPUT.PUT_LINE('Alamat : '||vAlamat);
  DBMS_OUTPUT.PUT_LINE('Jurusan : '||vJurusan);
  DBMS_OUTPUT.PUT_LINE('IPK : '||vIpk);
  
  DECLARE
    -- Local variabel
    
    vMatakuliah VARCHAR2(50);
    vNilai VARCHAR2(3);
  BEGIN
    vMatakuliah := 'Teknik Kompilasi';
    vNilai := 'A';
    
    DBMS_OUTPUT.PUT_LINE('Mata Kuliah : '||vMatakuliah);
    DBMS_OUTPUT.PUT_LINE('Nilai : '||vNilai);
  END;
  
END;

Output

Nama : Nursalim
Jenis Kelamin : Laki Laki
Alamat : Jakarta
Jurusan : Teknik Informatika
IPK : 3,75
Mata Kuliah : Teknik Kompilasi
Nilai : A

PL/SQL procedure successfully completed.

Variabel Dan Query

Anda dapat menyimpan hasil sebuah query SQL kedalam variabel yang telah ditentutkan.

Sebagai contoh, Anda dapat ikuti langkah-langkah di bawah ini.

1. Membuat Tabel

CREATE TABLE MAHASISWA
(
  NPM      VARCHAR2(10 BYTE),
  NAMA     VARCHAR2(50 BYTE),
  JURUSAN  VARCHAR2(50 BYTE)
);

Table Created.

2. Insert Data

Insert into NANO.MAHASISWA
   (NPM, NAMA, JURUSAN)
 Values
   ('2015001', 'Nursalim', 'Teknik Informatika');
Insert into NANO.MAHASISWA
   (NPM, NAMA, JURUSAN)
 Values
   ('2015002', 'Nani Indriyani', 'Bahasa Inggris');
Insert into NANO.MAHASISWA
   (NPM, NAMA, JURUSAN)
 Values
   ('2015003', 'Desi Lisnawati', 'Biologi');
COMMIT;

3. Program PL/SQL

DECLARE
  
  vNPM mahasiswa.npm%type := '2015001';
  vNama mahasiswa.nama%type;
  vJurusan mahasiswa.jurusan%type;
  
BEGIN
  
  SELECT nama, jurusan
  INTO vNama, vJurusan
  FROM mahasiswa
  WHERE npm = vNPM;
  
  DBMS_OUTPUT.PUT_LINE('Nama : '||vNama);
  DBMS_OUTPUT.PUT_LINE('Jurusan : '||vJurusan); 
  
  
END;


4. Output

Nama : Nursalim
Jurusan : Teknik Informatika

PL/SQL procedure successfully completed.


Selesai :)

Share on Google Plus

About Unknown

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment