Apa itu Procedure?
Procedure adalah salah satu subprogram di Oracle PL/SQL yang tidak memberikan nilai (return value) secara langsung. Procedure disimpan dalam database.Membuat Procedure
Untuk membuat procedure di Oracle PL/SQL kita dapat menggunakan perintah CREATE OR REPLACE PROCEDURE.Di bawah ini adalah sintak dasar untuk membuat 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 adalah nama yang digunakan untuk prosedure
- [OR REPLACE] digunakan untuk modifikasi procedure yang telah dibuat (existing procedure)
- paramater_name adalah parameter yang ditambahkan dalam procedure
- IS atau AS adalah keyword yang digunakan untuk standalone procedure.
- procedure_body adalah bagian isi (executable) dari procedure.
Contoh Program
Di bawah ini adalah contoh program Oracle PL/SQL untuk membuat procedure mencetak tulisan "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 dapat menggunakan 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 dapat menggunakan perintah/sintak di bawah ini:DROP PROCEDURE nama_procedure;
Contoh:
SQL> DROP PROCEDURE cetak_tulisan; Procedure dropped.
Query Melihat Daftar Procedure.
Di bawah ini adalah 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
0 comments:
Post a Comment