:::...Declarasi Variabel...:::
Mendeklarasikan Variabel
Merupakan pengembangan bahasa procedural sql, bahasa standard untuk mengakses data pada database relational dari oracle coorperation.
Penggunaan Variabel
Variabel dalam PL/SQL dapat digunakan untuk :
- Penyimpanan data sementara
- Manipulasi nilai yang sudah tersimpan : Varibel dapat digunakan untuk proses manipulasi nilai yang sudahtersimpan dalam database Oracle.
- Reusability : Variabel dapat digunakan kembali dengan melakukan referensi daristatement yang lain
- Memudahkan maintenance : Pada penggunaan %TYPE dan %ROWTYPE, deklarasi variable dibuatberdasarkan definisi dari kolom database -> in the next session
Aturan Penamaan Variabel
Variabel diberi nama sesuai dengan aturan, misal v_namemerepresentasikan suatu variable, jadi nama dari variable selalu diawali denganv diikuti dengan underscore (_) lalu nama variabelnya.
DECLARE
v_job VARCHAR2(9);
v_count BINARY_INTEGER := 0;
v_total_sal NUMBER(9,2) := 0;
v_orderdate DATE := SYSDATE + 7;
c_tax_rate CONSTANT NUMBER(3,2) := 8.25;
v_valid BOOLEAN NOT NULL := TRUE;
v_job VARCHAR2(9);
v_count BINARY_INTEGER := 0;
v_total_sal NUMBER(9,2) := 0;
v_orderdate DATE := SYSDATE + 7;
c_tax_rate CONSTANT NUMBER(3,2) := 8.25;
v_valid BOOLEAN NOT NULL := TRUE;
Tipe Block
- Anonymous
[DECLARE]
BEGIN
--statements
[EXCEPTION]
END;
BEGIN
--statements
[EXCEPTION]
END;
- Procedure
PROCEDURE name
IS
BEGIN
--statements
[EXCEPTION]
END;
IS
BEGIN
--statements
[EXCEPTION]
END;
- function
FUNCTION name
RETURN datatype
IS
BEGIN
--statements
RETURN value;
[EXCEPTION]
END;
RETURN datatype
IS
BEGIN
--statements
RETURN value;
[EXCEPTION]
END;
Tipe Variabel
- Tipe Data Scalar, menyimpan nilai tunggal seperti : VARCHAR2(maximum_length), NUMBER[(presicion, scale)], DATE,CHAR[(maximum_length)], LONG, LONG RAW, BOOLEAN, BINARY_INTEGER, PLS_INTEGER
- Tipe Data Composite, seperti record.
- Tipe data Reference, menyimpan nilai yang disebut pointer.
- Tipe Data LOB, menyimpan nilai yang disebut Locators.
Atribut %TYPE
Atribut %TYPE digunakan untuk mendeklarasikan variable yang memilikitipe data yang sama dengan definisi kolom database.
Syntax::
identifier Table.column_name%TYPE;
Examples:
...
v_name employees.last_name%TYPE;
v_balance NUMBER(7,2);
v_min_balance v_balance%TYPE := 10;
...
v_name employees.last_name%TYPE;
v_balance NUMBER(7,2);
v_min_balance v_balance%TYPE := 10;
...
DBMS_OUTPUT.PUTLINE
Bind variable selain ditampilkan dengan PRINT, juga dapat ditampilkandalam blok PL/SQL , dengan menggunakan fungsi standart yang disediakan olehOracle yaitu DBMS_OUTPUT.PUT_LINE. Untuk menggunakan fungsi ini,SERVEROUTPUT harus diset ON.
Bind variable selain ditampilkan dengan PRINT, juga dapat ditampilkandalam blok PL/SQL , dengan menggunakan fungsi standart yang disediakan olehOracle yaitu DBMS_OUTPUT.PUT_LINE. Untuk menggunakan fungsi ini,SERVEROUTPUT harus diset ON.
SET SERVEROUTPUT ON
DEFINE p_annual_sal = 60000
DEFINE p_annual_sal = 60000
v_sal NUMBER(9,2) := &p_annual_sal;
BEGIN
v_sal := v_sal/12;
DBMS_OUTPUT.PUT_LINE ('The monthly salary is ' || TO_CHAR(v_sal));
END;
/
Link 1
Link 2
0 komentar:
Posting Komentar