Kamis, 20 Maret 2014

pertemuan 4

Function

PL/SQL Function sama seperti procedure kecuali bahwa function dapat mengembalikan value.
Standalone function di buat menggunakan CREATE FUNCTION statement. Contoh Syntax yang sederhana seperti berikut :

CREATE [OR REPLACE] FUNCTION function_name
[(parameter_name [IN | OUT | IN OUT] type [, ...])]
RETURN return_datatype
{IS | AS}
BEGIN
   < function_body >
END [function_name];



Dimana

· function-name mendefinisikan nama fungsi.

· [OR REPLACE] option memperblehkan memodifikasi function yang sudah ada.

· Optional parameter mengandung nama, mode, dan tipe dari parameter. IN mewakili value yang akan di masuk kan dari luat dan OUT mewakili yang akan value yang akan di kembalikan ke luar dari procedure.

· Fungsi harus mengandung return statement.

· RETURN clause specifies that data type yang akan di kembalikan dalam function.

· function-body mengandung bagian yang tidak dapat di jalankan.

· The AS keyword digunakan menggantikan IS keyword untuk membuat standalone function.

Example:

Contoh berikut memperagakan membuat dan memanggil standalone function. Fungsi ini mengembalikan total angka dari COSTUMERS pada costumers table:


Select * from customers;

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  2 | Khilan   |  25 | Delhi     |  1500.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
|  4 | Chaitali |  25 | Mumbai    |  6500.00 |
|  5 | Hardik   |  27 | Bhopal    |  8500.00 |
|  6 | Komal    |  22 | MP        |  4500.00 |
+----+----------+-----+-----------+----------+
CREATE OR REPLACE FUNCTION totalCustomers
RETURN number IS
   total number(2) := 0;
BEGIN
   SELECT count(*) into total
   FROM customers;
  
   RETURN total;
END;
/



Calling a Function

Pada saat membuat function, kamu harus mendefinisikan apa yang funcntion akan lakukan. Untuk menggunakan function , kamu harus memanggil function tersebut untuk melakukan tugas yang sudah di. Ketika program memanggil function , control program akan di alihkan ke fungsi yang di panggil.

Fungsi yang di panggil melakukan tugas yang sudah di definisikan dan ketika return statement di jalankan atau ketika statement akhir telah di capai, kontrol akan di kembalikan ke program utama.

Untuk memanggil function anda hanya perlu menyertakan parameter berserta nama fungsi dan jika funsi return digunakan maka anda akan dapat menyimpan value tyang di return. Contoh program untuk memanggil fungsi totalCostumers dari anonymus block: 

DECLARE
   c number(2);
BEGIN
   c := totalCustomers();
   dbms_output.put_line('Total no. of Customers: ' || c);
END;
/


Ketika code di atas di jalankan SQL prompt akan memproduksi hasil sebagai berikut:
Total no. of Customers: 6

PL/SQL procedure successfully completed.

Tidak ada komentar:

Posting Komentar