deklarasi variabel dalam pl/sql

advertisement
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
Program
Deskripsi
Anonymous Block
Blok PL/SQL tanpa nama yang menempel dalam aplikasi atau
dijalankan secara interaktif
Stored Procedure
atau Function
Blok PL/SQL yang tersimpan di oracle server, yang dapat
menerima parameter dan dapat dipanggil berulang kali
Application
Procedure atau
Function
Blok PL/SQL yang tersimpan di aplikasi oracle developer
atau shared library, yang dapat menerima parameter dan
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
PRECISION
Numerik
Untuk bilangan riil dengan presisi yang
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.
b.
c.
d.
e.
f.
v_days_to_go := v_due_date-SYSDATE
v_sender := USER || ‘ : ‘|| TO_CHAR(v_dept_no);
v_sum := $100,000 + $250,000;
v_flag := TRUE;
v_n1 := v_n2 > (2*v_n3)
v_value : NULL;
3. Buatlah sebuah blok tanpa nama untuk
menghasilkan “MY PL/SQL Block Word” pada layar.
TERIMA KASIH
Download