Anda di halaman 1dari 39

DEKLARASI VARIABEL DALAM PL/SQL

Tentang PL/SQL
PL/SQL adalah perluasan SQL dengan
fitur bahasa pemrograman
PL/SQL adalah prosedur
berkelanjutan dari Oracle -SQL yang
menawarkan satu bentuk bahasa
pemrograman.
 SQL Data manipulation and query
statements disertakan dalam unit
kode prosedural.
Lanj..
Dengan PL/SQL, memungkinkan
penggunaan perintah SQL untuk
meningkatkan kualitas data Oracle
dan perintah kontrol PL/SQL untuk
memproses data tersebut.
PL/SQL memungkinkan user atau
designer untuk membentuk suatu
aplikasi database yang kompleks
yang menuntut pemakaian kontrol
struktur dan elemen prosedural
seperti prosedur, fungsi, atau modul.
Sasaran utama PL/SQL :
1. Memaksimalkan pengertian dari SQL.
2. Proses query yg maksimal.
3. Optimasi kombinasi dari perintah pada
SQL.
4. Membangun aplikasi database yg
modular.
5. Pemakaian kode pemrograman.
6. Mengurangi nilai maintenance dan
perubahan aplikasi.
Kelebihan PL/SQL
1. Integrasi
 Aplikasi Oracle
Developer
mempergunakan shared
libraries untuk
menyimpan kode.
 PL/SQL menjembatani
perbedaan pengaksesan
teknologi database dan
kebutuhan
pemrograman
prosedural
Kelebihan PL/SQL
2. Meningkatkan Kinerja
PL/SQL digunakan utk mengelompokkan perintah SQL
dalam sebuah blok tunggal dan mengirim keseluruh blok ke
server dengan sebuah call sehingga dapat mengurangi
kemacetan jaringan.
STRUKTUR BLOK PL/SQL
Jenis-Jenis Block
Jenis-Jenis Block
Anonymous Block
 Adalah blok tanpa nama.
 Dideklarasikan pada aplikasi yang akan
mengeksekusinya dan diteruskan ke mesin
PL/SQL untuk dieksekusi saat runtime.

Sub Program
 Adalah block PL/SQL yang dapat mengambil
parameter dan dapat dipanggil. Terbagi dua yaitu
prosedur dan fungsi.
 Prosedur untuk menjalankan sebuah aksi
 Fungsi untuk nilai
Kontruksi Program
Kontruksi Deskripsi
Program
Anonymous Block Blok PL/SQL tanpa nama yang menempel dalam aplikasi atau
dijalankan secara interaktif

Stored Procedure Blok PL/SQL yang tersimpan di oracle server, yang dapat
atau Function menerima parameter dan dapat dipanggil berulang kali

Application Blok PL/SQL yang tersimpan di aplikasi oracle developer


Procedure atau atau shared library, yang dapat menerima parameter dan
Function dapat dipanggil berulang kali

Paket Modul PL/SQL yang mengelompokan prosedur, function,


dan identifier yang berhubungan.

Database Trigger Block PL/SQL yang diasosiasikan dgn sebuah tabel


database dan dijalankan otomatis saat dipicu oleh
perintah DML

Application Trigger Block PL/SQL yang diasosiasikan dengan sebuah event


aplikasi dan dijalankan secara otomatis
VARIABEL
• Variabel adalah sebuah peubah yang
digunakan untuk menampung sebuah
nilai di memori komputer.
• Nilai yang disimpan dalam variabel
dapat diubah setiap saat jika
diperlukan.
• Tipe data dari variabel harus sesuai
dengan bilai yang akan ditampung (ex:
saat membuat PL/SQL akan menyimpan
nilai dengan tipe data INTEGER, maka
sat deklarasi variabel juga harus
dengan tipe data INTEGER)
KEGUNAAN VARIABEL
Variables digunakan untuk:
 Menyimpan data sementara
 Memanipulasi nilai yang disimpan
 Dapat digunakan kemballi
 Mudah dalam pemeliharaan
Penanganan Variable dalam PL/SQL

Deklarasi dan inisialisasi variabel


pada declaration section.
Pemberian nilai baru untuk variable
pada executable section.
Melewatkan nilai kedalam blok
PL/SQL melalui parameter.
Menampilkan hasil melalui variable
output
Tipe Variables
Variabel PL/SQL s:
• Scalar : Nilai tunggal
• Composite : Record
• Reference : Pointer
• LOB : Large objects

Variabel Non-PL/SQL :
Bind and Host variables
Tipe Variables
Deklarasi Variabel PL/SQL
Deklarasi Variabel PL/SQL
Guideline
Mengikuti aturan penamaan.
Inisialisasi variable dengan NOT NULL
dan CONSTANT.
Inisialisasi identifier menggunakan
assignment operator (:=) atau
reserved word DEFAULT.
Deklarasi paling banyak satu
identifier per baris.
Aturan Penamaan
 Dua variabel dapat memiliki nama yang sama,
disediakan pada blok yang berbeda.
 Nama variabel (identifier) tidak seharusnya
sama dengan nama kolom yang digunakan
pada blok PL/SQL.
Pemberian nilai Variable
Inisialisasi dan Keyword Variable

Menggunakan:
 Assignment operator (:=)
 DEFAULT keyword
 NOT NULL constraint
Contoh
Konstanta
Nilai yang disimpan dalam konstanta
bersifat tetap (konstan).
Cara mendeklarasikan konstanta
adalah dengan menambahkan kata
CONSTANT setelah menuliskan nama
konstanta dan mengisikan nilainya
setelah tipe data ditentukan.
Tipe data Scalar
Lanj..
NAMA TIPE Keterangan
NUMBER Numerik Untuk semua tipe numerik

BINARY_INTEGER Numerik Di dalamnya meliputi tipe unsigned integer

DEC Numerik Untuk bilangan desimal

DOUBLE Numerik Untuk bilangan riil dengan presisi yang


PRECISION tinggi
INTEGER Numerik Untuk bilangan bulat

INT Numerik Untuk bilangan bulat

NUMERIC Numerik Sama dengan NUMBER

REAL Numerik Sama dengan NUMBER


Lanj..
NAMA TIPE Keterangan
SMALLINT Numerik Untuk bilangan bulat dengan rentang yang
kecil
VARCHAR2 Karakter Untuk string dengan panjang yang dinamis
sesuai dengan panjang maksimal yang
ditentukan
CHAR Karakter Untuk string dengan panjang yang sudah
pasti
LONG Karakter Untuk string dengan lebar di atas 32.767
byte
DATE Tanggal Untuk tipe tanggal
BOOLEAN Boolean Bernilai TRUE (benar) dan FALSE (salah)
ROWIND Rowid Untuk tipe rowid
Deklarasi Variabel Scalar
Attribute %TYPE
Deklarasi sebuah variabel sesuai
dengan:
• Definisi kolom sebuah database
• Variabel yang telah dideklarasikan
sebelumnya
Awali %TYPE dengan:
• The database table and column
• The previously declared variable
name
Declaring Variables
dengan Attribute %TYPE
Deklarasi Boolean Variable
Hanya nilai TRUE, FALSE, and NULL
yang dapat diberikan untuk variable
Boolean.
Variable dihubungkan dengan logical
operators AND, OR, dan NOT.
Variable selalu menghasilkan nilai
TRUE, FALSE, atau NULL.
Ekspresi Arithmetic, character, and
date dapat digunakan untuk
menghasilkan nilai Boolean.
Structur PL/SQL Record
Tipe Variable LOB
Bind Variables
Mereferensikan Variabel Non-PL/SQL

Menyimpan gaji tahunan kedalam


SQL*Plus host variable.

Mereferensikan variabel non-PL/SQL


sebagai host variables.
Awali referensi dengan tanda colon (:).
DBMS_OUTPUT.PUT_LINE
Prosedur Oracle-supplied packaged
Sebagai alternatif menampilkan data
dari blok PL/SQL
Harus di aktifkan dalam SQL*Plus
dengan perintah SET SERVEROUTPUT
ON
Kesimpulan
PL/SQL blocks are composed of the
following sections:
• Declarative (optional)
• Executable (required)
• Exception handling (optional)
A PL/SQL block can be an
anonymous block, procedure, or
function.
LATIHAN
1. Berikut ini merupakan deklarasi variabel.
Tentukan yang legal dan tidak legal
serta jelaskan alasannya !
a. Declare
v_id number(4);
b. Declare
v_x, v_y, v_z varchar2(10);
c. Declare
v_birthdate Date Not null;
d. Declare
v_in_stock boolean := 1;
Lanj
2. Tentukan tipe data dari hasil ekspresi dibawah ini
a. v_days_to_go := v_due_date-SYSDATE
b. v_sender := USER || ‘ : ‘|| TO_CHAR(v_dept_no);
c. v_sum := $100,000 + $250,000;
d. v_flag := TRUE;
e. v_n1 := v_n2 > (2*v_n3)
f. v_value : NULL;

3. Buatlah sebuah blok tanpa nama untuk


menghasilkan “MY PL/SQL Block Word” pada layar.
TERIMA KASIH

Anda mungkin juga menyukai