0xCor3

PLSQL P12

Nov 19th, 2020 (edited)
216
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 2.20 KB | None | 0 0
  1. /*
  2. Nama    : Izzeldin Addarda
  3. NIM     : 41519010045
  4. */
  5.  
  6. SET SERVEROUTPUT ON;
  7. SET ECHO ON;
  8. /* Contoh Program #1 - Select Statement */
  9. DECLARE
  10.     v_emp_name VARCHAR2(100);
  11. BEGIN
  12.     SELECT first_name || ' ' || last_name
  13.     INTO v_emp_name
  14.     FROM employees
  15. WHERE employee_id=100;
  16.     DBMS_OUTPUT.PUT_LINE(v_emp_name);
  17. END;
  18. /
  19.  
  20. /* Contoh Program #2 - Upadate Statement */
  21. DECLARE
  22.     v_number_rows NUMBER(5);
  23. BEGIN
  24.     UPDATE employees
  25.     SET salary = salary + 1000;
  26.     IF SQL%NOTFOUND THEN
  27.         DBMS_OUTPUT.PUT_LINE('Tidak ada record yang berhasil di update');
  28.     ELSIF SQL%FOUND THEN
  29.         v_number_rows := SQL%ROWCOUNT;
  30.         DBMS_OUTPUT.PUT_LINE('Ada ' || v_number_rows || ' record yang telah berhasil di update');
  31.     END IF;
  32. END;
  33. /
  34.  
  35. /* Di bawah ini adalah contoh program PL/SQL menggunakan Explicit Cursor: */
  36. DECLARE
  37.     empno employees.employee_id%TYPE;
  38.     fname employees.first_name%TYPE;
  39.     lname employees.last_name%TYPE;
  40.     CURSOR emp_cursor IS SELECT employee_id, first_name, last_name FROM employees;
  41. BEGIN
  42.     OPEN emp_cursor;
  43.         LOOP
  44.         FETCH emp_cursor INTO empno, fname, lname;
  45.             EXIT WHEN emp_cursor%NOTFOUND;
  46.             DBMS_OUTPUT.PUT_LINE( TO_CHAR (empno) ||' '||fname ||' '|| lname);
  47.         END LOOP;
  48.     CLOSE emp_cursor;
  49. END;
  50. /
  51.  
  52. /* Menampilkan 10 data dari table employees menggunakan cursor: */
  53. DECLARE
  54.     empno employees.employee_id%TYPE;
  55.     fname employees.first_name%TYPE;
  56.     ename employees.last_name%TYPE;
  57.     i int;
  58.     CURSOR emp_cursor IS SELECT employee_id, first_name, last_name FROM employees;
  59. BEGIN
  60.     i:=0;
  61.     -- nilai awal utk nomor
  62.     OPEN emp_cursor;
  63.         DBMS_OUTPUT.PUT_LINE ('10 Data Employees');
  64.         DBMS_OUTPUT.PUT_LINE ('=================');
  65.         DBMS_OUTPUT.PUT_LINE ('No Emp_id Name');
  66.         DBMS_OUTPUT
  67.         .PUT_LINE ('-----------------------');
  68.         LOOP
  69.             FETCH emp_cursor INTO empno, fname,ename;
  70.             EXIT WHEN emp_cursor%NOTFOUND OR emp_cursor%ROWCOUNT > 10 ;
  71.             i:=i+1; --menambah nomor
  72.             DBMS_OUTPUT.PUT_LINE(I ||' ' || TO_CHAR(empno)
  73.             ||' '|| fname ||' '|| ename);
  74.         END LOOP;
  75.     CLOSE emp_cursor;
  76. END;
  77. /
Add Comment
Please, Sign In to add comment