Anda di halaman 1dari 3

JOBSHEET PRAKTIKUM

Berikut ini kita akan mencoba mempraktekkan perbedaan dengan menggunakan blok eksepsi
dengan yang tidak menggunakan blok eksepsi.

Petunjuk Praktikum:

1. Buka SQLPlus pada Oracle Database


2. Login sebagai user HR
3. Silahkan coba anda praktekkan dari mulai praktikum 1 – 7
4. Screen shot hasil dari masing-masing praktikum (1 – 7)
5. Sebutkan praktikum apa saja yang menggunakan blok eksepsi dan yang tidak
menggunakan blok eksepsi ! kemudian jelaskan blok eksepsi apa saja yang
digunakan?
6. Jelaskan kegunaan dari error handling pada PL/SQL.
7. Dikumpulkan sebagai laporan praktikum (file word).

Praktikum 1 :

SET SERVEROUTPUT ON
DECLARE
nama employees.last_name%type;
BEGIN
SELECT last_name INTO nama FROM employees
WHERE employee_id = 309;
DBMS_OUTPUT.PUT_LINE ('nama');
END;

Praktikum 2 :

SET SERVEROUTPUT ON
DECLARE
nama employees.last_name%type;
BEGIN
SELECT last_name INTO nama FROM employees
WHERE employee_id = 309;
DBMS_OUTPUT.PUT_LINE ('nama');
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE ('TIdak Ditemukan Datanya dalam Database');
END;
Praktikum 3 :

DECLARE
empno NUMBER;
BEGIN
SELECT employee_id INTO empno FROM employees ;
DBMS_OUTPUT.PUT_LINE(empno);
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('Data Tidak Ditemukan');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Terjadi Error yang Lain');
END;

Praktikum 4 :

declare
exep_lebih exception;
v1 number:='&v1';
v2 number:=99;
begin
if v1 > v2 then
raise exep_lebih;
else
dbms_output.put_line('volume masih bisa menampung');
end if;
exception
when exep_lebih then
dbms_output.put_line('volume '||v1||'lebih dari '|| v2);
when others then
dbms_output.put_line('volume tidak bisa menampung');
end;

Praktikum 5 :

SET SERVEROUTPUT ON

DECLARE
kebanyakan EXCEPTION;
PRAGMA EXCEPTION_INIT(kebanyakan, -01422);
emp employees.employee_id%type;

BEGIN
SELECT employee_id INTO emp FROM Employees;
DBMS_OUTPUT.PUT_LINE(EMP);
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('Hasil tidak ditemukan');

WHEN kebanyakan THEN


DBMS_OUTPUT.PUT_LINE(‘hasilnya kebanyakan’);

END;
Praktikum 6 :

SET SERVEROUTPUT ON

DECLARE
name VARCHAR2(100);
sal NUMBER;
BEGIN
SELECT last_name, salary INTO name, sal FROM employees WHERE employee_id =
120;

IF sal > 5000 THEN


RAISE_APPLICATION_ERROR (-20000,'Gaji Kebanyakan');
END IF;

DBMS_OUTPUT.PUT_LINE(name||' '||sal);
END;

Praktikum 7 :

declare
v_pembagi number:='&v_pembagi';
v_hasil number:=1000;
begin
v_hasil:=v_hasil/v_pembagi;
dbms_output.put_line(v_hasil);
exception
when zero_divide then
dbms_output.put_line('dibagi dengan nol');
end;

Anda mungkin juga menyukai