Apa itu Function?
Function sebenarnya mirip dengan Procedure, HANYA function akan memberikan nilai balikan (return value).Lihat Juga : Procedure pada Oracle PL/SQL.
Sintak Dasar
Di bawah ini adalah sintak dasar untuk membuat function di Oracle PL/SQL.CREATE [OR REPLACE] FUNCTION function_name [(parameter_name [IN | OUT | IN OUT] type [, ...])] RETURN return_datatype {IS | AS} BEGIN < function_body > END [function_name];
Keterangan:
- function_name adalah nama function yang akan kita buat. Sifatnya mandatory.
- parameter_name adalah parameter yang akan ditambahkan. Sifatnya opsional
- return_datatype adalah tipe data yang akan dibalikkan (return value).
- function_body adalah bagian tubuh dari function yang berisi program PL/SQL.
Contoh Program
Di bawah ini adalah contoh program sederhana untuk membuat function di Oracle PL/SQL
CREATE OR REPLACE FUNCTION NANO.tambah(bil1 in NUMBER, bil2 in NUMBER) RETURN NUMBER IS jumlah NUMBER(5); BEGIN jumlah := bil1+bil2; RETURN jumlah; END tambah; /
Memanggil Function
Untuk memanggil function yang telah kita buat seperti pada contoh program diatas, Ada 2 macam cara yaitu:1. Menggunakan program PL/SQL
Kita dapat memanggil function yang telah kita buat dengan menggunakan program PL/SQL, caranya adalah sebagai berikut:DECLARE bil1 NUMBER(3); bil2 NUMBER(3); BEGIN bil1 := 10; bil2 := 5; -- Memanggil function tambah(bil1,bil2) DBMS_OUTPUT.PUT_LINE('Hasil penjumlahan '||bil1||' dan '||bil2||' adalah '|| tambah(bil1, bil2)); END;
Output
Hasil penjumlahan 10 dan 5 adalah 15 PL/SQL procedure successfully completed.
2. Menggunakan Query
Selain menggunakan program PL/SQL seperti diatas, Kita juga dapat memanggil function dengan menggunakan query. Contohnya adalah:SQL> SELECT tambah(10,5) FROM dual; TAMBAH(10,5) ------------ 15
Melihat Daftar Function
Untuk melihat daftar function yang ada di database, Anda dapat menggunakan Query data dictionary di bawah ini:SQL> SELECT object_name 2 FROM user_objects 3 WHERE object_type = 'FUNCTION'; OBJECT_NAME ------------------------------------------- TAMBAH
Menghapus Function
Untuk menghapus function yang telah kita buat, Kita dapat menggunakan sintak di bawah ini:DROP FUNCTION function_name;
Contoh:
SQL> DROP FUNCTION tambah; Function dropped.
apakah function dapat menampilkan hasil data yang lebih dr 1 kolom?
ReplyDelete