Hurriyet

13 Kasım 2012 Salı

PL/SQL Ders 11


PL/SQL Fonksiyonları

PL/SQL fonksiyonu nedir?

            Fonksiyonlar prosedürlere benziyen PL/SQL bloklarıdır. Prosedürlerden en büyük farkları, fonksiyonların her zaman bir değer döndürmesi gerektiğidir. Buna karşılık prosedür de böyle bir gereklilik yoktur.

Genel yazım şekli:

CREATE [OR REPLACE] FUNCTION fonksiyon_ismi [parametreler]
RETURN dönülcek_veri_tipi; 
IS 
Tanım kısmı(Declaration_section )
BEGIN 
Çalıştırma kısmı(Execution_section )
Return dönülcek_değişken; 
EXCEPTION 
Hata tanımlama kısmı(exception section )
Return dönülcek_değişken; 
END;

Dönülcek_veri_tipi fonksiyonun başlangıcında ifade edilir. Bu tip herhangi bir Oracle tanımlı veri
 tipi olabilir: varchar,number gibi. Çalıştırma ve hata kısımlarının 2’si de bir değişken dönmelidirler.

1> CREATE OR REPLACE FUNCTION calisan_detay_fonk
2>    RETURN VARCHAR(20);
3> IS
5>    emp_name VARCHAR(20);
6> BEGIN
7>        SELECT first_name INTO emp_name
8>        FROM tablo WHERE empID = '100';
9>        RETURN emp_name;
10> END;
11> /

Bu örnekte çalışan id’si 100 olan çalışanın adını ekrana yazdırırız.

PL/SQL fonksiyonu nasıl çalıştırılır?
1)Fonksiyonlar birden fazla şekilde çalışıtırılabilinirler. Bütün fonksiyonlar bir değer döndürdük-
leri için direk olarak bir değişkene atanabilirler.
Calisan_ismi := calisan_detay_fonk;
2)Herhangi bir select ifadesinin bir parçası olarak:
Select calisan_detay_fonk from dual;
3)Bir PL/SQL ifadesi içinde:
Dbms_output.put_line(calisan_detay_fonk);

Hiç yorum yok:

Yorum Gönder