SQL Server İpuçları – 1 SQL Server’da Fonksiyon ve Prosedür Arasındaki Farklar Nelerdir?

SQLTips

Bu yazımla beraber yeni bir seriye başlıyorum. SQL server için yaklaşık 50 maddeden oluşan bir seri ipuçları yazmayı düşünüyorum. Zamana yayarak bu seriyi tamamlamaya çalışacağım. SQL Server’da çeşitli ihtiyaçlara binaen kullandığımız Store Procedured ve fonksiyonların farklarına değinmeye çalıştım.

Fonksiyon için,

  • Fonksiyon bir değer döndürmek zorundadır.
  • Fonksiyon sadece Select kullanımına izin verir, DML işlemleri kullanılamaz.
  • Hata fırlatma ve İstisnalar için Try Catch ifadeleri kullanılamaz.
  • Transaction’lar kullanılamaz.
  • Sadece Tablo değerlerleri kullanılabilir, Temporary tablolar kullanılamazlar.
  • Store Procedure’lar fonksiyonlarda kullanılamazlar.
  • Fonksiyon içerisinde SELECT-WHERE-HAVING kullanılabilirler.
  • Kullanıcı Tanımlı Fonksiyonlar (User Defined Functions) kullanılabilirler.

 

Stored Procedure için,

  • Stored Procedure değer döndürebilir veya döndürmez, herhangi bir zorunluluk yoktur
  • Select kullanımı yanında DML işlemleri de Stored Procedure içerisinde kullanılabilir.
  • Hata fırlatma ve İstisnalar için Try Catch ifadeleri kullanılabilir.
  • Transcation’lar kullanılabilir.
  • Tablo değerlerleri ve Temporary tablo olarak iki yapıda kullanılabilir.
  • Fonksiyonlar Stored Procedure yapısı içerisinde kullanılabilir.
  • Stored Procedure içerisinde SELECT-WHERE-HAVING kullanılamazlar.
  • Kullanıcı Tanımlı Fonksiyonlar (User Defined Functions) kullanılamazlar.

 

Bu konuyla ilgili sorularınızı  alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

www.mshowto.org

TAGs: SQL Server İpuçları, SQL Server Tips,Store Procedured, Fonksiyon,Try Catch, Functions,Transaction, User Defined Functions

Yazı gezinmesi

Mobil sürümden çık