Resume kuliah Pemrograman Basis Data 2 - Pertemuan 3
Resume : 3
Mata Kuliah : Pemrograman Basis Data 2
Dosen : Hendro Poerbo P, S.T.,M.MT
Umumnya kondisi pl/sql adalah struktur yang terdiri dari perintah IF dan Case. Terdapat tiga bentuk perintah-perintah,yaitu:
1. Perintah If-Then
- Rangkaian perintah-perintah dieksekusi hanya jika kondisi adalah true. Jika kondisi bernilai false atau null, perintah If tidak melakukan apa-apa. Dalam salah satu kasus, kontrol berlaku kepada perintah selanjutnya
- Bentuk Umum :
sequence_of_statements
End IF;
- Contoh :
1 | DECLARE |
2 | PHarga NUMBER(5); |
3 | BEGIN |
4 | PHarga := 500; |
5 | IF (PHarga > 100) THEN |
6 | --JIKA SYARAT TERPENUHI, LAKUKAN AKSI DIBAWAH INI. |
7 | DBMS_OUTPUT.PUT_LINE( 'PHarga diatas 100' ); |
8 | END IF; --AKHIR DARI PENGKONDISIAN. |
9 | END ; |
2. Perintah If-Then-Else
- Rangkaian perintah-perintah dalam klausa Else dieksekusi hanya jik kondisi bernilai false atau null. Jadi, klausa Else memastikan bahwa rangkaian perintah-perintah tersebut dieksekusi.
- Bentuk Umum :
sequence_of_statement1
Else
sequence_of_statements2
End If;
- Contoh :
01 | DECLARE |
02 | PId VARCHAR2(3); |
03 | PHarga NUMBER(5); |
04 | BEGIN |
05 | PId := 'B03' ; |
06 | SELECT harga INTO PHarga FROM Barang WHERE IDB = PId; |
07 | --MENGAMBIL NILAI HARGA PADA TABLE BARANG LALU DIMASUKKAN KE DALAM PHARGA. |
08 | IF (PHarga > 3000) THEN |
09 | DBMS_OUTPUT.PUT_LINE( 'Mahal!' ); |
10 | ELSE |
11 | DBMS_OUTPUT.PUT_LINE( 'Murah!' ); |
12 | END IF; |
13 | END ; |
3. Perintah If-Then-Else-If
- Jika kondisi pertama bernilai false atau null, klausa ElseIf akan menguji kondisi lainnya. Perintah IF dapat memiliki sejumlah klausa ElseIf; klausa final Else bersifat opsional (bisa digunakan atau tidak). Kondisi-kondisi dievaluasi satu demi satu dari atas ke bawah. Jika suatu kondisi bernilai true, rangkaian perintah-perintah yang ada di dalamnya dieksekusi dan kontrol akan menuju ke perintah selanjutnya. Jika seluruh kondisi bernilai false atau null, maka rangkaian perintah-perintah di dalam klausa Else yang akan dieksekusi.
- Bentu Umum :
sequence_of_statement1
ElseIf condition2 Then
sequence_of_statement2
Else
sequence_of_statement3
End If;
- Contoh:
01 | DECLARE |
02 | PId VARCHAR2(3); |
03 | PHarga NUMBER(5); |
04 | BEGIN |
05 | PId := 'B02' ; |
06 | SELECT harga INTO PHarga FROM Barang WHERE IDB = PId; |
07 | IF PHarga > 3500 THEN |
08 | DBMS_OUTPUT.PUT_LINE( 'Mahal!' ); |
09 | ELSIF PHarga < 3500 THEN |
10 | DBMS_OUTPUT.PUT_LINE( 'Murah!' ); |
11 | ELSIF PHarga = 3500 THEN |
12 | DBMS_OUTPUT.PUT_LINE( 'Harga pas!' ); |
13 | END IF; |
14 | END ; |
4. Perintah Case
- Seperti halnya perintah IF, Perintah Case menyeleksi satu rangkaian perintah-perintah untuk dieksekusi. Namun, untuk menyeleksi rangkaian perintah-perintah tersebut, perintah case menggunakan penyeleksi, bukannya menggunakan banyak ekspresi-ekspresi boolean.
- Bentuk Umum:
case selector
when expression1 then sequence_of_statement1;
when expression2 then sequence_of_statement2;
....................
when expression then sequence_of_statementN;
[else sequence_of_statement+1;]
end case [label_name];
- Contoh:
5. Perintah While Loop
- Sebelum setiap perulangan dari loop, kondisi dievaluasi, Jika kondisi true, rangkaian perintah-perintah dieksekusi, kemudian kontrol kembali ke awal loop. Jika kondisi false atau null, loop diabaikan dan kontrol menuju ke perintah selanjutnya.
- Bentuk umum:
sequence_of_statements
End Loop;
- Contoh:
6. Perintah For Loop
- Jumlah perulangan melalui loop While tidak diketahui sampai loop berakhir, namun jumlah perulangan melalui loop For telah diketahui sebelum loop dijalankan. Loop-loop For berulang sejumlah jangkauan integer tertentu. Jangkauan ini adalah bagian dari iteration schema, yang diapit oleh kata-kata kunci For dan Loop. Tanda titik dua (..) bertindak sebagai operator jangkauan .
- Bentuk Umum:
sequence_of_statements
End Loop;
Tidak ada komentar:
Posting Komentar