Stored Procedure Nedir?

SqlVeritabanı alanında en önemli konulardan birisidir Stored Procedure. Stored Procedure dediğimiz kavramı bu yazıda açıklayacağım.

Stored Procedure’ler parametre alabilen, parametre almasına gerek kalmayan, kayıt edilebilen, tekrar sorgu edilmesine gerek kalmayan, değer döndürebilen bir yordamdır. Bu yordam işimizi oldukça kolaylaştırmaktadır. Yaptığımız bir yordamı zamanlamayabiliriz.

Stored Procedure’lerin çeşitleride bulunmaktadır. Veritabanı hakkında detaylı bir bilgim olmadığı için detaylandıramayacağım.

Genel olarak bu yordam Server’a göre değişiklik gösterse de syntax’ı aynıdır..

 

 

Bu yordam geri değer döndürmeyen bir Stored Procedure’dur. Geri dönen yordamın kullanım şekli ise.

 

Şeklinde olmaktadır. Bu işlemde de görüldüğü gibi “@” işareti ile değişkenimizi belirledik. Değişken belirleyerek bu değeri “=” ifadesi ile bir atama işlemi yaparak sql ifadesine değer gönderebilmekteyiz.
Yazdığımız bu yordamı çalıştırmak için gerekli olan ise bir ifade bulunmakta.

Değer göndermeye gerek kalmaya yordam için.

Değer göndereceğimiz yordam için.

 

1 Yorum

  1. uğur

    Veri tabanlarında procedurler bildiğimiz işçi sınıfıdır.Her toplumda olduğu gibi buradada en önemli sınıftır :).

    Yetki bulunması durumunda her yerden kolayca ulaşılabilinir.İçerisinde tablolara veri ekleme,çıkarma,güncelleme tablo ismi değiştirme,yetkilendirme gibi bir çok işlem yapılabilir.

    Çok fazla sorgu ve kendi local değişkenleri kullanılabilir.Parametre alan çeşitlerine null şeklinde de paremetre gönderilebilir,ona göre procedure kendisi işlemleri şekillendirecektir.

    Procedurler kendi başına hatalı bir işlemi durdurabilir,işlemleri yapılmasını engeller böylece hatalı müdahelelerden sakınılması saplanır.Üzerinde bulunduğu server ın tüm fonksiyonlarını aktif olarak kullanbilir ki bu en büyük yararlarından biridir.

    Ayrıca procedurler bir package in içerinde birden fazla bulunabilir,istenirse birbirini tetikleyerek zincerleme şekilde çalışarak büyük boyuttaki işleri kolayca halledebilirler.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir