Você está na página 1de 6

Gunakan Database HR (LOG-IN HR)

1. PLSQL menampilkan first name employee_id=200, gunakan SELECT

DECLARE
fname VARCHAR2(25);
BEGIN
SELECT first_name INTO fname
FROM employees WHERE employee_id=200;
DBMS_OUTPUT.PUT_LINE(' First Name is : '||fname);
END;

2. PLSQL Menampilkan tanggal masuk pegawai dan gajinya untuk employee_id=100

DECLARE
emp_hiredate employees.hire_date%TYPE;
emp_salary employees.salary%TYPE;
BEGIN
SELECT hire_date, salary
INTO emp_hiredate, emp_salary
FROM employees
WHERE employee_id = 100;
DBMS_OUTPUT.PUT_LINE(' hire date: '||emp_hiredate);
DBMS_OUTPUT.PUT_LINE(' Salary : '||emp_salary);
END;

1 dari 6
3. PLSQL Menghitung jumlah gaji seluruh pegawai
DECLARE
sum_sal NUMBER(10,2);
deptno NUMBER NOT NULL := 60;
BEGIN
SELECT SUM(salary) -- group function
INTO sum_sal FROM employees
WHERE department_id = deptno;
DBMS_OUTPUT.PUT_LINE ('The sum of salary is ' || sum_sal);
END;

4. PLSQL Menambah data di tabel employees


BEGIN
INSERT INTO employees
(employee_id, first_name, last_name, email,
hire_date, job_id, salary)
VALUES(employees_seq.NEXTVAL, 'Ruth', 'Cores', 'RCORES',sysdate, 'AD_ASST', 4000);
END;

periksa data tsb.:


select * from employees
where first_name='Ruth';

5. menampilkan gaji job_id=ST_CLERK


select employee_id,job_id, salary from employees

2 dari 6
where job_id = 'ST_CLERK';

6. PlSQL Mengganti gaji job_id=ST_CLERK ditambah 800 dari gaji semula


DECLARE
sal_increase employees.salary%TYPE := 800;
BEGIN
UPDATE employees
SET salary = salary + sal_increase
WHERE job_id = 'ST_CLERK';
END;

periksa setelah gaji berubah :


select job_id, salary from employees
where job_id = 'ST_CLERK';

7. menampilkan pegawai di department_id =10


select employee_id, first_name,last_name,department_id
from employees
where department_id =10;

8. PLSQL Menghapus pegawai di department_id=10


DECLARE
deptno employees.department_id%TYPE := 10;
BEGIN
DELETE FROM employees

3 dari 6
WHERE department_id = deptno;
END;

9. PLSQL menampilkan nama departmen dan banyaknya pegawai dari manaje_ id yang
dipilih, misal manager_id =108 atau 200 (gunakan CASE WHEN)
DECLARE
deptid NUMBER;
deptname VARCHAR2(20);
emps NUMBER;
mngid NUMBER:= 108;
BEGIN
CASE mngid
WHEN 108 THEN
SELECT department_id, department_name
INTO deptid, deptname FROM departments
WHERE manager_id=108;
SELECT count(*) INTO emps FROM employees
WHERE department_id=deptid;
WHEN 200 THEN
SELECT department_id, department_name
INTO deptid, deptname FROM departments
WHERE manager_id=108;
SELECT count(*) INTO emps FROM employees
WHERE department_id=deptid;
END CASE;

4 dari 6
DBMS_OUTPUT.PUT_LINE ('Nama departmen '|| deptname|| ' department. Banyak
pegawai : '||emps ||' orang di sini');
END;

10. menampilkan nama pegawai dan gajinya dengan job_id IT_PROG


select employee_id, first_name,last_name,job_id,salary
from employees
where job_id='IT_PROG';

11. Buat program PLSQL untuk mengganti gaji pegawai IT_PROG ditambah 200 dari gaji
semula
2. While
WHILE kondisi LOOP
1. PENGULANGAN- Basic Loops pernyataan-1 ;
pernyataan-2 ;
LOOP
....
statement1;
END LOOP;
. . .
EXIT [WHEN condition]; 3. FOR counter IN [REVERSE]
END LOOP; lower_bound..upper_bound LOOP
statement1;
statement2;
...
END LOOP;
12. --program untuk menampilkan 'belajar PL/SQL oracle' 10 kali
declare
j integer;
begin
j:=1;
loop
dbms_output.put_line(j || ' belajar PL/SQL oracle');
j:=j+1;
exit when j > 10;
end loop;
end;

5 dari 6
13. Contoh Basic Loops menambah data
Melihat data locations sebelum ditambah :
select * from locations
where country_id='CA’

select * from locations


where country_id='CA’ Melihat data locations setelah ditambah
14. WHILE Loops

Latihan hari ini kirimkan ke email :


subject : PLSQL KLS LAT4-HR NIM NAMA

6 dari 6

Você também pode gostar