Penrgertian Variabel PL / SQL
Dalam PL / SQL, sebuah variabel adalah nama yang berarti dari lokasi penyimpanan sementara yang mendukung tipe data tertentu dalam suatu program. Sebelum menggunakan variabel, Kamu harus mendeklarasikannya terlebih dulu di bagian deklarasi blok PL / SQL.Aturan penamaan variabel PL / SQL
Seperti bahasa pemrograman lainnya, variabel dalam PL / SQL harus mengikuti aturan penamaan sebagai berikut:
- Nama variabel harus kurang dari 31 karakter. Cobalah untuk membuatnya seirama mungkin dalam 31 karakter.
- Nama variabel harus dimulai dengan huruf ASCII. Bisa berupa huruf kecil atau huruf besar. Perhatikan bahwa PL / SQL tidak bersifat case-insensitive, yang berarti v_data dan V_DATA mengacu pada variabel yang sama.
- Diikuti oleh karakter pertama ada beberapa angka, garis bawah (_), dan tanda dollar ($) karakter.
PL / SQL variabel penamaan konvensi
Sangat disarankan agar Anda mengikuti konvensi penamaan yang tercantum dalam tabel berikut untuk membuat variabel terlihat jelas dalam program PL / SQL:
Prefix DataType
v_ VARCHAR2
n_ NUMBER
t_ TABEL
r_ ROW
d_ DATE
b_ BOOLEAN
Setiap organisasi memiliki pedoman penamaan konvensi penamaannya sendiri. Pastikan kamu mematuhi pedoman konvensi penamaan organisasinya.
Misalnya, jika kamu ingin mendeklarasikan variabel yang memegang nama depan karyawan dengan tipe data VARCHAR2, nama variabel harus v_first_name.
Deklarasi Variabel PL / SQL
Untuk mendeklarasikan sebuah variabel, kamu bisa menggunakan nama variabel diikuti oleh tipe data dan diakhiri dengan titik koma (;). kamu juga dapat secara eksplisit menambahkan batasan panjang ke tipe data dalam tanda kurung.
Contoh berikut ini adalah ilustrasi mendeklarasikan beberapa variabel dalam blok anonim PL / SQL:
DECLARE
v_first_name varchar2(20);
v_last_name varchar2(20);
n_employee_id number;
d_hire_date date;
BEGIN
NULL;
END;
PL/SQL variable anchors
Dalam program PL / SQL, salah satu tugas yang paling umum adalah memilih nilai dari kolom dalam tabel menjadi satu set variabel. Jika tipe data kolom dari tabel berubah, kamu harus mengubah program PL / SQL untuk membuat jenis variabel yang kompatibel dengan perubahan baru.
PL / SQL terdapat fitur yang sangat berguna yang disebut variable anchors. Ini mengacu pada penggunaan kata kunci% TYPE untuk mendeklarasikan variabel dengan tipe data dikaitkan dengan tipe data kolom dari kolom tertentu dalam sebuah tabel.
Mari kita lihat tabel karyawan di database sampel SDM yang disediakan oleh Oracle:
Tabel Karyawan - Variabel PL / SQL
DECLARE
v_first_name EMPLOYEES.FIRST_NAME%TYPE;
v_last_name EMPLOYEES.LAST_NAME%TYPE;
n_employee_id EMPLOYEES.EMPLOYEE_ID%TYPE;
d_hire_date EMPLOYEES.HIRE_DATE%TYPE;
BEGIN
NULL;
END;
/
Variabel v_first_name memiliki tipe data yang sama dengan tipe data kolom first_name pada tabel emloyees. Jika tipe data perubahan kolom first_name, jenis variabel v_first_name secara otomatis mewarisi tipe data kolom yang baru.
Penugasan variabel PL / SQL
Dalam PL / SQL, untuk menetapkan nilai atau variabel ke variabel, bisa menggunakan operator penugasan (: =) yang merupakan titik dua (:) diikuti oleh tanda sama dengan (=).
Silakan lihat daftar kode di bawah ini untuk mendapatkan pemahaman yang lebih baik:
DECLARE
v_first_name EMPLOYEES.FIRST_NAME%TYPE;
v_last_name EMPLOYEES.LAST_NAME%TYPE;
n_employee_id EMPLOYEES.EMPLOYEE_ID%TYPE;
d_hire_date EMPLOYEES.HIRE_DATE%TYPE;
BEGIN
v_first_name := 'Mary';
v_last_name := 'Jane';
d_hire_date := to_date('19700101','YYYYMMDD');
END;
/
Pada contoh di atas, saya menugaskan variabel Mary ke v_first_name, variabel Jane ke v_last_name, dan hasil dari fungsi to_date menjadi variabel d_hire_date.
kamu juga dapat menggunakan INTO dari statemen SELECT SQL untuk menetapkan sebuah nilai ke sebuah variabel. Klausa INTO memindahkan nilai dari daftar kolom SELECT query ke variabel PL / SQL yang sesuai.
SET SERVEROUTPUT ON SIZE 1000000;
DECLARE
v_first_name EMPLOYEES.FIRST_NAME%TYPE;
v_last_name EMPLOYEES.LAST_NAME%TYPE;
n_employee_id EMPLOYEES.EMPLOYEE_ID%TYPE;
d_hire_date EMPLOYEES.HIRE_DATE%TYPE;
BEGIN
SELECT employee_id,
first_name,
last_name,
hire_date
INTO n_employee_id,
v_first_name,
v_last_name,
d_hire_date
FROM employees
WHERE employee_id = 200;
DBMS_OUTPUT.PUT_LINE(v_first_name);
DBMS_OUTPUT.PUT_LINE(v_last_name);
DBMS_OUTPUT.PUT_LINE(d_hire_date);
END;
/
Menginisialisasi variabel
Ketika kamu mendeklarasikan sebuah variabel, nilainya tidak diinisiasi dan karenanya adalah NULL. Kamu dapat menginisialisasi variabel sebuah nilai pada bagian deklarasi dengan menggunakan variabel assignment.
Lihat contoh berikut ini:
DECLARE
n_employee_id EMPLOYEES.EMPLOYEE_ID%TYPE :=200;
d_hire_date EMPLOYEES.HIRE_DATE%TYPE:=to_date('19700101','YYYYMMDD');
BEGIN
NULL;
END;
/
Dalam PL / SQL, NULL berarti nilai yang tidak diketahui sehingga memiliki beberapa karakteristik khusus sebagai berikut:
NULL tidak sama dengan apapun, bahkan NULL sendiri.
NULL tidak lebih dari atau kurang dari apapun, bahkan NULL.
Anda tidak dapat menggunakan operator logika sama (=) atau (<>) dengan NULL. Anda harus menggunakan SQL IS NULL atau TIDAK NULL untuk menguji nilai NULL.
Dalam tutorial ini, kami telah menunjukkan kepada Anda bagaimana cara mendeklarasikan, menetapkan dan menginisialisasi variabel PL / SQL. Kami juga mengantarmu bagaimana cara mendeklarasikan variabel PL / SQL menggunakan anchor variabel untuk membuat kodemu lebih fleksibel dan mudah beradaptasi dengan perubahan kolom tabel database.
sumber gambar dan Referensi artikel asli : http://www.plsqltutorial.com/
0 comments:
Post a Comment