Pengertian procedure pada plsql

PENGERTIAN PROCEDURE
Sekumpulan perintah (program) yang disimpan dalam database tanpa harus mengulang perintah untuk mengcompile sebuah perintah (program), Perintah yang disimpan umumnya perintah yang rumit dan sering digunakan dalam pengolahan data. menurut versi lain Procedure adalah sub program yang digunakan untuk melakukan proses tertentu dan tidak mengembalikan nilai, bisa disimpan dalam database sebagai object schema, sehingga suatu procedure bisa digunakan berulangkali tanpa harus melakukan parsing dan compile ulang.

PROCEDURE DENGAN PARAMETER/ARGUMEN
Perbedaan dengan procedure tanpa parameter yaitu procedure dengan parameter memiliki output yang dinamis sesuai dengan nilai yang diberi pada parameter procedure tersebut. Default argumen pada Oracle adalah IN. Jenis-Jenis parameter/argumen dari Procedure adalah, Parameter Masukan (Input), Ditandai dengan atribut IN, dimana nilai dari parameter ini merupakan inputan untuk sebuah procedure, dan Parameter Keluaran (Output), Ditandai dengan atribut OUT, dimana parameter ini merupakan variabel penampung untuk output sebuah procedure.

KEUNTUNGAN MENGGUNAKAN SP
  • ·         Karena tersimpan dalam DBMS, maka DBMS dapat mendeteksi jika program (procedures) hrs disesuaikan karena adanya perubahan pada basis  data (misalnya struktur field berubah)
  • ·         SP disimpan di dalam server, jadi tidak perlu di-install di masing - masing client
  • ·         SP pada dasarnya sama dengan membuat program, sehingga dapat digunakan untuk tujuan apapun, tidak terbatas pada perintah SQL
  • ·         SP ikut dijaga keamanannya oleh sistem keamanan DBMS nya

PERINTAH DASAR STORE PROCEDURE
CREATE [OR REPLACE] PROCEDURE namaproc
(parameter1,.....) IS | AS {deklarasi variable}
BEGIN
....... (perintah pemrograman) END;

CONTOH PROCEDURE (TANPA PARAMETER)
CREATE OR REPLACE PROCEDURE hitung_luasPP as
pjg NUMBER(4);
lbr NUMBER(4);
luas number(7);
BEGIN
pjg:=4;
lbr :=10;
luas:=pjg*lbr;
dbms_output.put_line('Luas PP = ' ||  to_number(luas));
end;

Menjalankan prosedure
Begin
Nama prosedur;
End;
Contoh untuk hitung_luasPP:
Begin
hitung_luasPP ;
End;
Hasil procedure di atas :


CONTOH PROCEDURE DENGAN PARAMETER
CREATE OR REPLACE PROCEDURE hitung_luasPP(pjg in int,lbr in int ) as
Luas number;
BEGIN
luas:= pjg* lbr;L
dbms_output.put_line ('Luas PP = ' || luas);
end;
Menjalankan prosedure
begin
hitung_luasPP(4,10);
end;
Hasil procedure di atas :


Postingan terkait:

Belum ada tanggapan untuk "Pengertian procedure pada plsql"

Post a Comment