Kamis, 19 Desember 2013

RANGKUMAN PBD2


 MATAKULIAH : PBD 2
NAMA DOSEN :Titik Lusiani, M.Kom, OCA
BLOG :DOSEN :http://blog.stikom.edu/lusiani

POCEDURE,FUNCTION DAN  PACKAGE

  1. PROCEDURE
Procedure adalah suatu blok PL/SQL yang menyimpan sekumpulan perintah yang tidak disertai dengan pengembalian nilai. Dengan kata lain, procedure hanya melakukan proses tertentu saja.
Syntax untuk membuat procedure
CREATE [OR REPLACE] PROCEDURE nama_procedure
(parameter_1 tipedata, parameter_2 tipedata, …) IS
variabel-variabel_lokal
BEGIN
Statemen;
……
END;

  1. FUNCTION
Function adalah sebuah blok PL/SQL yang dapat mengembalikan nilai. Maka dari itu dalam pembuatannya harus menggunakan statemen RETURN untuk proses pengembalian nilai.

2.1 Syntax untuk membuat function
CREATE OR REPLACE FUNCTION nama_function
(parameter_1 tipedata, parameter_2 tipedata, …) IS
RETURN tipedata_function IS
variabel-variabel_lokal
BEGIN
Statemen;
……
RETURN nilai_function;
END;
   
Contoh Syntax:
CREATE OR REPLACE PROCEDURE LAP_DEPARTMEN AS
BEGIN
  for deptid in
 (SELECT d.department_id, department_name,
       count(employee_id) jml
  FROM departments d, employees e
       WHERE d.department_id = e.department_id(+)
       GROUP BY d.department_id, department_name)
  loop
dbms_output.put_line
(deptid.department_id ||‘Kode dari departemen‘ ||
  deptid.department_name ||
  ‘ dengan jumlah karyawan = ‘ || deptid.jml);
  for emp in
(select employee_id, last_name
 from employees
        where department_id=deptid.department_id)
           loop
dbms_output.put_line(‘  ‘||emp.employee.id||
                              ‘||emp.last_name);
       end loop;
 end loop;
END LAP_DEPARTMEN;

Panggil procedure tersebut dengan mengetikkan perintah
exec lap_departmen;


CREATE OR REPLACE FUNCTION RATAGAJI
(deptid IN NUMBER)
RETURN NUMBER AS
sal number := 0.0;
BEGIN
  select avg(salary) into sal from employee
  where department_id=deptid;
  RETURN sal;
END RATAGAJI;

Syntax Memanggil Function
select department_id, department_name,
ratagaji(department_id) “RATA-RATA GAJI”
from departments;


  1. Package
Package merupakan suatu kumpulan subprogram seperti PROCEDURE dan FUNCTION. Dengan Package, Kita dapat menjalankan beberapa blok PL/SQL hanya dalam satu kali eksekusi.
Keuntungan Menggunakan PACKAGE :
  • Modularity
  • Memudahkan dalam hal Maintenance
  • Memudahkan dalam hal design aplikasi
  • Dapat Menyembunyikan Informasi, karena yang hanya ditampilkan dalam sebuah aplikasi hanya parent atau spesifikasinya saja, sedangkan body nya disembunyikan dan tidak dapat diakses.
  • Added functionality
  • Meningkatkan Performance
  • Dapat menggunakan Overloading
Package terdiri dari 2 bagian :
  1. Bagian Spesifikasi atau Parent
  2. Bagian Body
Hal Pertama yang kita harus lakukan dalam membuat sebuah package yaitu kita harus mendefinisikan terlebih dahulu Bagian Parentnya baru kemudian kita definisikan bagian Bodynya



Syntax Package Parent :
CREATE [OR REPLACE] PACKAGE package_name IS|AS
public type and variable declarations
subprogram specifications
END [package_name];

Syntax Package Body :
CREATE [OR REPLACE] PACKAGE BODY package_name IS|AS
private type and variable declarations
subprogram bodies
[BEGIN initialization statements]
END [package_name];



Tidak ada komentar:

Posting Komentar