Sunday, May 9, 2010

Procedure adalah blok PL/SQL yang menyimpan sekumpulan perintah yang tidak disertai dengan pengembalian nilai. Jadi prosedur hanya melakukan proses tertentu saja. Procedure secara umum diaktivasi dengan statemen EXECUTE.


Membuat Procedure

Procedure dibuat dengan statemen CREATE PROCEDURE. Untuk perintah pembuatannya sebagai berikut :
CREATE [OR REPLACE] PROCEDURE nama_procedure
(parameter_1 tipedata, parameter_2 tipedata, . . . .) IS
variable-variabel_lokal
BEGIN

statemen;
. . . .

END;

Dalam oracle kita tidak boleh menuliskan procedure dengan nama yang sama. Maka dari itu pembuatan procedure disertakan statemen OR REPLACE. Statemen tersebut bersifat opsional dan digunakan bila sudah ada nama procedure yang sama, sehingga procedure yang lama akan diganti dengan procedure yang baru.

Untuk mempermudah pemahaman, kita lihat contoh kasus di bawah ini :

Kita akan membuat procedure yang dapat menampilkan nama suplier dari tabel suplier yang memiliki kode 'EJ-01'. Maka kita dapat menuliskannya ke dalam kode berikut :
create or replace procedure cari_nama_supplier is
vNamasuplier suplir.nama_suplier%TYPE;
begin
select nama_suplier into vNamasuplier from
where kode_suplier = 'EJ-01';
dbms_output.put_line('Namanya adalah : ' ||
vNamasuplier);
end;
Penjelasan :

a. create or replace procedure

Statemen CREATE digunakan untuk membuat prosedur dan REPLACE digunakan untuk mengganti isi dari procedure jika nama procedure sudah ada dalam database.

b. vNamasuplier suplir.nama_suplier%TYPE

Artinya kita mendeklarasikan sebuah variabel yang bernama vNamasuplier dan %TYPE menunjukkan bahawa tipe data sama dengan kolom nama_suplier yang ada pada tabel suplier

c. select nama_suplier into vNamasuplier from where kode_suplier = 'EJ-01'

Ini adalah blok PL/SQL yang digunakan untuk menampilkan nama suplier dari tabel suplier yang berkode 'EJ-01'. Selanjutnya nama tersebut disimpan ke variabel vNamasuplier.

d. dbms_output.put_line('Namanya adalah : ' || vNamasuplier)

Statemen ini artinya menampilkan teks 'Namanya adalah : ' yang akan digabungkan dengan nama suplier yang diperoleh dari variabel vNamasuplier. Untuk menggabungkannya ditandai dengan tanda '||'.

Eksekusi Procedure

Untuk melakukan eksekusi terhadap suatu procedure, kita harus menggunakan statemen EXECUTE, atau cukup dengan menuliskan EXEC saja.

Berikut adalah bentuk perintahnya :
EXEC[UTE] NamaProcedure(daftar_parameter);
Untuk contoh kasus, kita akan coba melakukan eksekusi untuk procedure cari_nama_suplier yang tealah kita buat di atas, maka perintahnya adalah sebagai berikut.
exec cari_nama_suplier;
maka hasilnya :
SQL>exec cari_nama_suplier;
Namanya adalah : PT. ACTION

PL/SQL procedure succesfully completed.

SQL>
Catatan kecil :
Jikalau ada yang salah, mohon dibenarkan ya,hehe. Aku masih nubie sama oracle ^^
Categories:

7 comments:

  1. Wayh aku jujur kurang ngerti klo masalah Database bener2 awam Sob hhe......soalnya aku ga terlalu jago analisa jadi ... nanti amburadul klo aku yg bikin hhe.....makasih nie ilmu'y aku jadi tau Sob....

    ReplyDelete
  2. hmm..
    jgn ngrendah gt donk..
    kykny situ jago ngehack ya :p
    hehe..

    ReplyDelete
  3. berhubung sy masih awam di bidang ini, jd cukup mengucapkan saLam kenaL saja.

    ReplyDelete
  4. Ad, cara ngoneksino Oracle dengan PHP yo opo??

    ReplyDelete
  5. jika ingin bisa php dan mySQL terlebih dahulu kita mesti menguasai microsoft access, low dasar-dasarnya kita dah dapat insya Allah ga terlalu bingung.
    Hosting Murah Indonesia Indositehost.com

    ReplyDelete
  6. @tukang colong :sama sama sob :)

    @om_rame : ok, salam kenal juga ^^

    @Just_Bryan : wz iso kn :D

    @kang salman : iyah itu salah satuny cara untuk blajar database :D

    ReplyDelete

Silahkan berkomentar ria ^^

Subscribe to RSS Feed Follow me on Twitter!