Panduan Pemula untuk Variabel PL/SQL
Hai sana, para ahli PL/SQL masa depan! Hari ini, kita akan memulai perjalanan menarik ke dunia variabel PL/SQL. Jangan khawatir jika Anda baru dalam programming - saya akan menjadi panduan ramah Anda, dan kita akan melakukannya langkah demi langkah. Pada akhir panduan ini, Anda akan dapat mengelilingkan variabel seperti seorang ahli!
Apa Itu Variabel?
Sebelum kita mendalam, mari pahami apa itu variabel. Picturkan variabel seperti wadah kecil dalam memori komputer Anda yang menyimpan data. Seperti halnya Anda mungkin menggunakan kotak yang berbeda untuk menyimpan jenis item yang berbeda di kamar Anda, kita menggunakan variabel untuk menyimpan jenis data yang berbeda dalam program kita.
Deklarasi Variabel di PL/SQL
Dalam PL/SQL, mendeklarasikan variabel adalah seperti memperkenalkan diri Anda kepada seseorang baru. Anda memberitahu program, "Hai, saya di sini, dan ini adalah apa yang bisa saya tangkap!"
Sintaks Dasar
Sintaks dasar untuk mendeklarasikan variabel di PL/SQL adalah:
variable_name datatype;
Bongkarlah ini:
-
variable_name
adalah apa yang Anda pilih untuk menyebut variabel Anda -
datatype
adalah jenis data yang dapat variabel tangkap
Contoh
DECLARE
my_name VARCHAR2(50);
my_age NUMBER;
is_student BOOLEAN;
BEGIN
-- Kode Anda di sini
END;
Dalam contoh ini:
-
my_name
dapat menangkap hingga 50 karakter -
my_age
dapat menangkap sebuah nomor -
is_student
dapat TRUE atau FALSE
Ingat, dalam PL/SQL, kita mendeklarasikan variabel di bagian DECLARE, sebelum pernyataan BEGIN.
Jenis Data Umum
Berikut adalah tabel jenis data umum yang Anda akan temui:
Jenis Data | Deskripsi | Contoh |
---|---|---|
VARCHAR2 | String karakter variabel panjang | 'Hello, World!' |
NUMBER | Nilai numerik | 42, 3.14 |
DATE | Nilai tanggal dan waktu | '01-JAN-2023' |
BOOLEAN | Nilai logis (TRUE/FALSE) | TRUE |
Inisialisasi Variabel di PL/SQL
Sekarang kita sudah mendeklarasikan variabel kita, mari memberikan mereka nilai! Proses ini disebut inisialisasi.
Inisialisasi Dasar
Anda dapat inisialisasi variabel langsung saat Anda mendeklarasikannya:
DECLARE
greeting VARCHAR2(20) := 'Hello, PL/SQL!';
lucky_number NUMBER := 7;
BEGIN
DBMS_OUTPUT.PUT_LINE(greeting);
DBMS_OUTPUT.PUT_LINE('Nomor keberuntungan saya adalah: ' || lucky_number);
END;
Dalam contoh ini, kita menyapa PL/SQL dan berbagi nomor keberuntungan kita. :=
adalah operator penugasan di PL/SQL.
Inisialisasi dengan NULL
kadang-kadang, Anda mungkin ingin mendeklarasikan variabel tetapi belum memberikan nilai. Dalam kasus ini, Anda dapat menggunakan NULL:
DECLARE
user_input VARCHAR2(100) := NULL;
BEGIN
-- Kita akan mendapatkan input pengguna kemudian
END;
Rentang Variabel di PL/SQL
Rentang variabel adalah seperti lingkungan sekitar variabel - itu menentukan di mana variabel dapat dilihat dan digunakan.
Variabel Lokal
Variabel yang dideklarasikan dalam blok adalah lokal ke blok itu. Mereka tidak dapat dilihat di luar blok mereka.
DECLARE
outer_variable VARCHAR2(20) := 'Saya di luar!';
BEGIN
DBMS_OUTPUT.PUT_LINE(outer_variable);
DECLARE
inner_variable VARCHAR2(20) := 'Saya di dalam!';
BEGIN
DBMS_OUTPUT.PUT_LINE(outer_variable); -- Ini berjalan
DBMS_OUTPUT.PUT_LINE(inner_variable); -- Ini juga berjalan
END;
DBMS_OUTPUT.PUT_LINE(outer_variable); -- Ini berjalan
-- DBMS_OUTPUT.PUT_LINE(inner_variable); -- Ini akan menyebabkan kesalahan
END;
Dalam contoh ini, inner_variable
adalah seperti seorang teman malu yang hanya muncul di pesta blok dalam. Blok luar tidak dapat melihatnya!
Variabel Global
Jika Anda ingin sebuah variabel dapat dilihat di seluruh program Anda, Anda dapat mendeklarasikannya dalam blok terluar.
DECLARE
global_var NUMBER := 100;
PROCEDURE print_global IS
BEGIN
DBMS_OUTPUT.PUT_LINE('Nilai variabel global: ' || global_var);
END;
BEGIN
print_global;
global_var := global_var + 50;
print_global;
END;
Di sini, global_var
adalah seperti seorang anak populer - semua orang kenal dan dapat berinteraksi dengannya!
Menugaskan Hasil Query SQL ke Variabel PL/SQL
Salah satu hal yang menarik tentang PL/SQL adalah bagaimana ia secara mulus berintegrasikan dengan SQL. Anda dapat menggunakan query SQL untuk menugaskan nilai ke variabel PL/SQL Anda!
Query Satu Baris
DECLARE
employee_name VARCHAR2(100);
employee_salary NUMBER;
BEGIN
SELECT first_name || ' ' || last_name, salary
INTO employee_name, employee_salary
FROM employees
WHERE employee_id = 100;
DBMS_OUTPUT.PUT_LINE('Karyawan: ' || employee_name);
DBMS_OUTPUT.PUT_LINE('Gaji: $' || employee_salary);
END;
Dalam contoh ini, kita mengambil nama dan gaji karyawan dari tabel employees
dan menyimpannya dalam variabel PL/SQL kita.
Query Banyak Baris
Untuk banyak baris, kita perlu menggunakan cursor atau bulk collect. Berikut adalah contoh dengan bulk collect:
DECLARE
TYPE name_table_type IS TABLE OF VARCHAR2(100);
employee_names name_table_type;
BEGIN
SELECT first_name || ' ' || last_name
BULK COLLECT INTO employee_names
FROM employees
WHERE department_id = 60;
FOR i IN 1..employee_names.COUNT LOOP
DBMS_OUTPUT.PUT_LINE('Karyawan ' || i || ': ' || employee_names(i));
END LOOP;
END;
Skrip ini mengambil semua nama karyawan dari departemen 60 dan menyimpannya dalam tabel PL/SQL. Kita kemudian perulangan melalui tabel ini untuk mencetak setiap nama.
Dan begitu juga, teman-teman! Kita telah meliputi dasar-dasar variabel PL/SQL, dari deklarasi ke inisialisasi, rentang, dan bahkan bagaimana mengisi mereka dengan hasil query SQL. Ingat, latihan membuat sempurna, jadi jangan takut untuk mencoba konsep ini.
Sebelum saya akhir, ini adalah sedikit lelucon programer untuk Anda: Mengapa programer meninggalkan pekerjaannya? Karena dia tidak mendapatkan array (naik gaji)! ?
Selamat coding, dan semoga variabel Anda selalu berkelakuan baik!
Credits: Image by storyset