Function Pada PL/SQL

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.


Share on Google Plus

About Unknown

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

2 comments:

  1. apakah function dapat menampilkan hasil data yang lebih dr 1 kolom?

    ReplyDelete