Apa itu Procedure?
Procedure yakni salah satu subprogram di Oracle PL/SQL yang tidak menunjukkan nilai (return value) secara langsung. Procedure disimpan dalam database.Membuat Procedure
Untuk menciptakan procedure di Oracle PL/SQL kita sanggup memakai perintah CREATE OR REPLACE PROCEDURE.Di bawah ini yakni sintak dasar untuk menciptakan procedure:
CREATE [OR REPLACE] PROCEDURE procedure_name [(parameter_name [IN | OUT | IN OUT] type [, ...])] {IS | AS} BEGIN < procedure_body > END procedure_name;
Keterangan:
- procedure_name yakni nama yang dipakai untuk prosedure
- [OR REPLACE] dipakai untuk modifikasi procedure yang telah dibentuk (existing procedure)
- paramater_name yakni parameter yang ditambahkan dalam procedure
- IS atau AS yakni keyword yang dipakai untuk standalone procedure.
- procedure_body yakni bab isi (executable) dari procedure.
Contoh Program
Di bawah ini yakni teladan aktivitas Oracle PL/SQL untuk menciptakan procedure mencetak goresan pena "Selamat Belajar PL/SQL.. PL/SQL Itu Asyik" sebanyak 10 kali.
CREATE OR REPLACE PROCEDURE cetak_tulisan IS CNT INT(3); BEGIN FOR CNT IN 1..5 LOOP DBMS_OUTPUT.PUT_LINE('Selamat Belajar PL/SQL.. PL/SQL Itu Asyik'); END LOOP; END cetak_tulisan; /
Eksekusi Procedure
Untuk menjalankan procedure yang telah kita buat, kita sanggup memakai perintah EXECUTE nama_procedure; pada jendela SQLPlus.
SQL> set serveroutput on; SQL> execute cetak_tulisan; Selamat Belajar PL/SQL.. PL/SQL Itu Asyik Selamat Belajar PL/SQL.. PL/SQL Itu Asyik Selamat Belajar PL/SQL.. PL/SQL Itu Asyik Selamat Belajar PL/SQL.. PL/SQL Itu Asyik Selamat Belajar PL/SQL.. PL/SQL Itu Asyik PL/SQL procedure successfully completed.
Menghapus Procedure
Untuk menghapus procedure, Anda sanggup memakai perintah/sintak di bawah ini:DROP PROCEDURE nama_procedure;
Contoh:
SQL> DROP PROCEDURE cetak_tulisan; Procedure dropped.
Query Melihat Daftar Procedure.
Di bawah ini yakni query untuk melihat daftar procedure yang ada di database:SQL> set linesize 1000; SQL> SELECT object_id, object_name, object_type FROM user_procedures; OBJECT_ID OBJECT_NAME OBJECT_TYPE ---------- ------------------------------------------------- 114664 CETAK_TULISAN PROCEDURE