Transcript PL/SQL

SITI MUKAROMAH,S.Kom

Pada Oracle tipe data PL/SQL secara umum
dibedakan menjadi lima, yaitu: numerik,
karakter, date, boolean, dan rowid.
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
INTEGER
Numerik Untuk bilangan bulat
INT
Numerik Untuk bilangan bulat
NUMERIC
Numerik Sama dengan NUMBER
REAL
Numerik Sama dengan NUMBER
tinggi
NAMA
TIPE
Keterangan
SMALLINT
Numerik Untuk bilangan bulat dengan rentang yang kecil
VARCHAR
2
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
•
•
•
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)
•
•
•
•
•
Contoh:
Baris 1: DECLARE, berarti memberitahu Anda akan
mendeklarasikan sebuah/beberapa variabel atau
konstanta.
Baris2: memerintahkan Oracle untuk
mendeklarasikan variabel dengan nama X yang
bertipe INTEGER.
Baris 3: memerintahkan Oracle untuk
mendeklarasikan variabel dengan nama Alamat yang
bertipe varchar2. (40) berfungsi memesan ruang
(panjang string) di memori sebanyak 40 karakter.
Karena variabel bertipe VARCHAR2, pemesanan ruang
di memori bersifat dinamis sesuai dengan nilai yang
disimpan ke dalam variabel tersebut.
Baris 4: variabel No_induk dengan tipe data CHAR
yang dalam pemesanan ruang memori bersifat statis.


Baris 2: berfungsi untuk menyimpan nilai 12
ke dalam variabel X.
Baris 3 & 4: menyimpan nilai-nilai ke dalam
variabel Alamat dan No_induk.


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.
1.
2.
Buatlah sebuah blok PL/SQL sederhana
sehingga pada layar SQL*Plus akan
menampilkan teks berikut:
‘/* Ini adalah komentar program*/’
Jelaskan mengapa blok PL/SQL di bawah ini
mengalami error pada saat dijalankan.
Z := 3 + 6;
Maka:
• Z
• :=
• 3 dan 6
• 3 + 6
• +
• Z := 3 + 6
disebut
disebut
disebut
disebut
disebut
disebut
variabel
operator assignment
operand
ekspresi
operator aritmatika
statemen aritmatika
1.
Jika terdapat tiga buah variabel x, y, dan z
dimana masing-masing dengan ketentuan
sebagai berikut:
x (diisi dengan nilai 13)
y (diisi dengan nilai 12)
z (sebagai penampung hasil operasi-operasi
aritmatika antara x dan y)
Buatlah sebuah blok PL/SQL yang dapat
memberikan hasil sebagai berikut:
Gsdgdfgsdgdfgdfg
dgsdgsdgsdfgsdgdsfg

Syntax umum:
Contoh 1
• Buatlah sebuah blok PL/SQL yang dapat
menentukan bilangan bulat apakah termasuk
bilangan genap atau ganjil! Kemudian
tampilkan bilangan genap tersebut dengan
diikuti teks ADALAH BILANGAN GENAP jika
bilangan tersebut habis dibagi 2 dan jika
tidak teks yang akan ditampilkan ADALAH
BILANGAN GANJIL!
Contoh 2:
 Buatlah sebuah blok PL/SQL yang dapat
menentukan bilangan terbesar dari dua buah
bilangan bulat!

Bentuk penyelesaian yang lebih ringkas:
Contoh 1
 Buatlah sebuah blok PL/SQL yang dapat
menentukan sebuah bilangan bulat apakah
termasuk bilangan positif, negatif, atau nol!
Struktur SIMPLE LOOP
• Digunakan untuk melakukan pengulangan
statemen dalam blok PL/SQL dimana pada
saat akan masuk ke badan pengulangan tidak
perlu adanya kondisi awal yang harus
diperiksa terlebih dahulu.
• Pengecekan kondisi baru akan dilakukan
pada saat program selesai mengeksekusi
statement-statement yang didefinisikan
dalam badan pengulangan.

Syntax Umum:
Contoh 1:
 Buatlah sebuah blok PL/SQL yang dapat
menampilkan teks ‘Belajar PL/SQL’ sebanyak
10 kali!
Contoh 2:
 Hitung hasil dari penjumlahan bilanganbilangan yang terdapat pada deret berikut:
2 + 4 + 6 + ... + 18

Variabel K digunakan sebagai pencacah
proses pengulangan (counter)
Contoh 3:
 Dari jawaban no.2, modifikasi agar dapat
menghitung rata2


Pada struktur perulangan ini proses
pengulangan atau program dapat memasuki
badan pengulangan hanya jika kondisi yang
diberikan bernilai benar.
Pengecekan kondisi dilakukan pada saat
memasuki badan perulangan. Jika bernilai
FALSE, maka badan perulangan tidak pernah
dimasuki

Syntax Umum WHILE – LOOP:
Contoh 1:
 Buatlah sebuah blok PL/SQL yang dapat
menampilkan ‘Belajar PL/SQL’ sebanyak 10
kali, gunakan struktur perulangan
WHILE–LOOP!
Contoh 2:
 Buatlah sebuah blok PL/SQL yang dapat
menghitung nilai perpangkatan dari 26!
•
•
Adalah struktur pengulangan yang tidak
mengandung kondisi yang harus diperiksa di
dalamnya sehingga badan pengulangan pasti
akan dimasuki.
Pada struktur FOR – LOOP ini batas-batas nilai
yang akan digunakan untuk menentukan
banyaknya proses pengulangan harus
didefinisikan terlebih dahulu, sehingga struktur
pengulangan jenis ini lebih sering digunakan
untuk melakukan proses pengulangan yang
sudah dipastikan banyaknya.

Syntak umum FOR – LOOP
Contoh 1:
 Buatlah sebuah nlok PL/SQL yang dapat
menampilkan bilangan dari 1 sampai 10!
Contoh 2:
 Buatlah sebuah nlok PL/SQL yang dapat
menampilkan bilangan dari 10 sampai 1
dengan pengurangan sebesar 1!
1.
Tampilkan sepuluh buah bilangan positif
pertama yang merupakan kelipatan 4 dan
jumlah total dari penjumlahan bilanganbilangan tersebut dengan menggunakan
struktur perulangan Simple Loop, WHILELOOP, dan FOR-LOOP!
2.
Buatlah sebuah blok PL/SQL untuk menentukan Nilai
Huruf (A,B,C,D,E) dari nilai ujian mahasiswa (masih
berbentuk angka) pada suatu perguruan tinggi di
Surabaya. Untuk menghitung Nilai Akhir =
(uts*0.35)+(uas*0.40)+(quiz*0.25). Ketentuannya sebagai
berikut :
NILAI HURUF
•
NILAI ANGKA
A
Nilai ≥ 80
B
70 ≤ nilai < 80
C
55 ≤ nilai < 70
D
40 ≤ nilai < 55
E
Nilai < 40
Ket : inputan utk nilai uts,uas dan quiz dari user
3.
•
•
•
Tampilkan urut angka 1-10. Dengan
menggunakan :
LOOP
FOR – LOOP
WHILE – LOOP