SQL Server’da Stored Procedure Yapısı
Merhaba! Daha önce yazdığım yazılarda ‘SQL nedir, çeşitleri nelerdir, kurulumu nasıl yapılır?’ konularına değindim. Bu kez SQL Server üzerinde yapılan Stored Procedure (SP) işlemlerinden bahsedeceğim.
Öncelikle ‘Stored Procedure Nedir?’ sorusuyla başlayalım.
Stored Procedure kavramı, veri tabanı üzerinde dışarıdan bir parametre alabilen ve veri tabanına tekli-çoklu değerler gönderebilen yapısal programlama parçacıklarıdır. Türkçe’ye ‘Saklı Yordam’ olarak da çevrilen ‘Stored Procedure’ kavramı, yazılan bir query’ ye göre oldukça hızlı çalışır ve aynı query’ leri tekrar tekrar yazmanıza gerek kalmadan, veritabanı üzerinde işlemler yapar. Örneğin; aşağıda oluşturduğumuz ‘personel’ tablosu için işlemler yapmamız gerekirse, bu işlemleri ‘Stored Procedure’ olarak kaydedebiliriz. Böylece, bu tablo üzerinde yapacağımız herhangi işlemi yazdığımız SP ile çağırabiliriz. SP’ ler performans olarak oldukça hızlı oldukları için, veri tabanını da yormazlar.
Ben kullandığım Navicat programı üzerinden SQL Server veri tabanına bağlanıp, ‘personel’ tablosunu oluşturdum.
Bu personel tablosundaki tüm bilgileri aşağıdaki query ile getirebilirim.
SELECT * FROM personel
Fakat bir SP yazdığımda yapacağım işleme her ihtiyaç duyduğumda, query’ yi uzunca yazmak yerine SP’yi çağırdığımda aynı işlemi yapmış olurum.
Bunun için;
Aşağıdaki ekran görüntüsünde de belirttiğim functions butonuna tıklayıp, ‘New Functions’ı seçtiğimizde, Ekran SP yazmaya hazır hale gelir.
Aşağıdaki query yapısını kullanarak bir Stored Procedure hazırlayabiliriz:
CREATE PROCEDURE sp_adi
AS
BEGIN
Yapacağımız işlemin query si bu aralıkta yer almalıdır.
END
Kodu tamamladıktan sonra ‘Save’ butonuna tıklayıp SP’yi kaydedebiliriz. Böylece ekranın sol tarafında ‘Functions’ sekmesinin altında kaydettiğimiz SP görünecektir.
SP’yi çalıştırmak istediğimizde aşağıdaki query ile çağırabiliriz.
EXEC sp_adi
Böylece, kaydettiğimiz SP’ler üzerinde çeşitli işlemler yaparak, veri tabanı üzerine yapacağımız işlemleri de değiştirebiliriz.
Yazımda SQL’ de Stored Procedure (Saklı Yordam) nasıl oluşturulur, nasıl kullanılır? konusuna kısaca değinmek istedim. Farklı ve büyük çaplı projeler için SP’lerinizi belirttiğim yapıya göre düzenleyebilirsiniz.
Zaman ayırıp okuduğunuz için teşekkür ederim ! :)