Saklı Yordam ve İşlev Arasındaki Fark

Saklı Yordam vs İşlev
 

Saklı yordamlar ve işlevler iki tür programlama bloğudur. Her ikisinin de çağrı isimleri olmalıdır. Bu çağrı isimleri prosedürler ve paketler veya SQL sorguları gibi başka bir programlama bloğunda çağırmak için kullanılır. Bu nesne türlerinin her ikisi de parametreleri kabul eder ve bu nesnelerin arkasındaki görevi gerçekleştirir. Bu, saklı yordam oluşturmak için sözdizimidir (ORACLE içinde),

 yordam adı (parametreler) oluştur veya değiştir

 gibi

 başla

     ifadeleri;

 istisna

     istisna işleme

 son;

Ve burada bir işlev oluşturmak için sözdizimi (ORACLE içinde),

işlev_adı (parametreler) oluşturma veya değiştirme

return return_datatype

gibi

başla

ifadeleri;

return return_value / değişken;

istisna;

istisna işleme;

son;

Saklı Yordamlar

Yukarıda belirtildiği gibi, saklı yordamlar programlama blokları olarak adlandırılmaktadır. Parametreleri, prosedürün arkasındaki mantığa göre kullanıcı girişi ve işlemi olarak kabul eder ve sonucu verir (veya belirli bir eylem gerçekleştirir). Bu parametreler IN, OUT ve INOUT türleri olabilir. Değişken bildirimleri, değişken atamaları, kontrol deyimleri, döngüler, SQL sorguları ve diğer işlevler / yordam / paket çağrıları yordamlar gövdesi içinde olabilir.

Fonksiyonlar

İşlevler, RETURN deyimini kullanarak bir değer döndürmesi gereken programlama blokları olarak adlandırılır ve bir değer döndürmeden önce, gövdesi de bazı eylemleri gerçekleştirir (verilen mantığa göre). Fonksiyonlar ayrıca çalıştırılacak parametreleri de kabul eder. Fonksiyonlar sorguların içinde çağrılabilir. Bir işlev SELECT sorgusu içinde çağrıldığında, SELECT sorgusunun sonuç kümesinin her satırı için geçerlidir. ORACLE işlevlerinin birkaç kategorisi vardır. Onlar,

  • Tek satır işlevleri (sorgunun her satırı için tek bir sonuç döndürür)

Tek satırlık işlevlerin alt kategorileri vardır.

  • Sayısal işlev (Örn: ABS, SIN, COS)
  • Karakter fonksiyonu (Örn: CONCAT, INITCAP)
  • Tarih saat işlevi (Örn: LAST_DAY, NEXT_DAY)
  • Dönüştürme işlevleri (Örn: TO_CHAR, TO_DATE)
  • Toplama fonksiyonu (Örn: CARDINALITY, SET)
  • Toplama işlevleri (Bir satır grubuna bağlı olarak tek bir satır döndürür. Örn: AVG, SUM, MAX)
  • Analitik fonksiyonlar
  • Nesne referans fonksiyonları
  • Model fonksiyonları
  • Kullanıcı tanımlı işlevler

İşlev ve Saklı Yordam arasındaki fark nedir?

• Tüm işlevler RETURN deyimini kullanarak bir değer döndürmelidir. Saklı yordamlar, RETURN deyimi kullanarak değerleri döndürmez. Bir yordam içindeki RETURN deyimi denetimini çağıran programa döndürür. OUT parametreleri saklı yordamlardan değerleri döndürmek için kullanılabilir.

• İşlevler sorguların içinde çağrılabilir, ancak saklı yordamlar sorguların içinde kullanılamaz.

• Bir işlev oluşturmak için RETURN veri türü eklenmelidir, ancak DDL saklı yordamında yer almaz.