1. Sebutkan
kondisi pada PLSQL ?
IF-THEN,
IF-THEN-ELSE,
IF-THEN-ELSIF, dan
CASE
2. Sebutkan dan jelaskan
bentuk umum pada fungsi kondisi PLSQL
Perintah IF-THEN
Bentuk umum :
IF
condition THEN
sequence_of_statements
END IF;
sequence_of_statements
END IF;
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
berlalu kepada perintah selanjutnya.
Perintah IF-THEN-ELSE
Bentuk umum :
IF
condition THEN
sequence_of_statements1
ELSE
sequence_of_statements2
END IF;
sequence_of_statements1
ELSE
sequence_of_statements2
END IF;
Rangkaian perintah-perintah
dalam klausa ELSE dieksekusi hanya jika kondisi bernilai false atau null. Jadi,
klausa ELSE memastikan bahwa rangkaian perintah-perintah tersebut dieksekusi.
Perintah IF-THEN-ELSIF
Bentuk umum :
IF
condition1 THEN
sequence_of_statements1
ELSIF condition2 THEN
sequence_of_statements2
ELSE
sequence_of_statements3
END IF;
sequence_of_statements1
ELSIF condition2 THEN
sequence_of_statements2
ELSE
sequence_of_statements3
END IF;
Jika kondisi pertama bernilai
false atau null, klausa ELSIF akan menguji kondisi lainnya. Perintah IF dapat
memiliki sejumlah klausa ELSIF; 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.
Perintah CASE
Bentuk umum :
[<>]
CASE selector
WHEN expression1 THEN sequence_of_statements1;
WHEN expression2 THEN sequence_of_statements2;
…
WHEN expressionN THEN sequence_of_statementsN;
[ELSE sequence_of_statementsN+1;]
END CASE [label_name];
CASE selector
WHEN expression1 THEN sequence_of_statements1;
WHEN expression2 THEN sequence_of_statements2;
…
WHEN expressionN THEN sequence_of_statementsN;
[ELSE sequence_of_statementsN+1;]
END CASE [label_name];
Seperti halnya perintah IF,
perintah CASE menyeleksi satu rangkaian perintah-perintah untuk dieksekusi.
Namun, untuk menyeleksi rangkain perintah-perintah tersebut, perintah CASE
menggunakan penyeleksi, bukannya menggunakan banyak ekspresi-ekspresi Boolean.
3.
Sebutkan dan jelaskan contoh program pada kondisi
tersebut.
SET SETVEROUTPUT ON
DECLARE
J NUMBER;
JUM VARCHAR(20);
BEGIN
SELECT COUNT(*) INTO J FROM TAB;
IF J=1 THEN
JUM := ’SATU’;
ELSIF J=2 THEN
JUM := ’DUA’;
ELSIF J=3 THEN
JUM := ’TIGA’;
ELSIF J=4 THEN
JUM := ’EMPAT’;
ELSIF J=5 THEN
JUM := ’LIMA’;
END IF;
DBMS_OUTPUT.PUT_LINE(‘JUMLAH TABEL = ’||J||’ (’||JUM||’)’);
END;
/
DECLARE
J NUMBER;
JUM VARCHAR(20);
BEGIN
SELECT COUNT(*) INTO J FROM TAB;
IF J=1 THEN
JUM := ’SATU’;
ELSIF J=2 THEN
JUM := ’DUA’;
ELSIF J=3 THEN
JUM := ’TIGA’;
ELSIF J=4 THEN
JUM := ’EMPAT’;
ELSIF J=5 THEN
JUM := ’LIMA’;
END IF;
DBMS_OUTPUT.PUT_LINE(‘JUMLAH TABEL = ’||J||’ (’||JUM||’)’);
END;
/
Tidak ada komentar:
Posting Komentar