SQL Server ile Stored Procedure Oluşturmaya Giriş

Microsoft SQL Server'dan önce daha önce en çok kullanılan veritabanı yönetim sistemlerinden biri olan MySQL ile Stored Procedure oluşturma işlemini incelemiştik. Aynı mantıkla fakat farklı bir söz dizimi ile bu defa SQL Server altında saklı yordam oluşturmayı inceleyeceğiz.

Bildiğiniz gibi stored procedure kullanmanın en büyük avantajı hızdan kazanmaktır. Bir veritabanı nesnesi olan Stored procedure'leri kullanmak yerine çoğu zaman bir programlama dili ile de aynı işleri yaptırabilirsiniz. Fakat saklı yordamlar veritabanı içinde çalışan yordamlar olduğundan bir programlama diline göre kat kat daha hızlıdır.  Diğer bir avantajı ise güvenlik(security) 'dir. Hacker'in tablolara direkt erişimini engelleyen bir yapıdır. 

Şimdi SQL Server Management Studio altında bir veritabanı ve içinde bir tablo oluşturup bu işlemin nasıl yapılacağını görelim. Aşağıdaki gibi oluşturduğumuz veritabanı altında Programmability atından Stored Procedure üzerine sağ tıklayıp New Stored Procedure seçeneğini seçiyoruz.





Sonra gelen pencerede tüm kodları silip aşağıdaki kodları yazıyoruz. Daha önce tblogrenci tablosu oluşturup bu tabloda BURS isimli parasal verileri saklayan bir alan oluşturduğumuzu düşünelim. tblogrenci tablomuzun yapısını aşağıda görmektesiniz. Burada ogrenciID alanımız Primary Key(Birincil Anahtar) ve Automatic Increment(Otomatik Artan) olarak  ayarlanmış olmalıdır. Tablomuza biraz da veri girelim ki saklı yordamın hesaplayacağı bir şeyler olsun. Aşağıda özellikle üzerinde işlem yapacağımız alan BURS alanıdır, bu alanın NUMERIC(15,2) olarak tanımlandığına dikkat ediniz.


CREATE PROCEDURE ya da CREATE PROC yazdıktan sonra bu prosedüre vermek istediğimiz ismi yazıyoruz. Daha sonra AS ifadesi ve ardırdan BEGIN - END arasına kodlarımızı yazıyoruz. Bu kodu çalıştırdığımız sol taraftaki listede stored procedure oluşacaktır.

CREATE PROC sp_ogrenci_burs_ortalama

AS

BEGIN

       SELECT  AVG(BURS) FROM tblogrenci;

END


Daha sonra bu stored procedure'ü çağırmak için  EXEC komutunu kullanacağız. SQL Server Managemet Studio'da yeni bir Query açıp aşağıdaki satırları yazdıktan sonra Ünlem işaretine basarak çalıştırınız. 

USE okuldb

GO

EXEC sp_ogrenci_burs_ortalama

Bu işlemin sonunda SQL Server bize bütün öğrencilerin aldığı bursların ortalamasını gösterecektir. Saklı yordamı çalıştırmanın diğer bir yolu da sol tarafta Stored Procedures altında saklı yordamı bulup üzerine sağ tıklayarak "Execure Stored Procedure" menüsünü kullanmaktır. Unutmamanız gereken nokta bir Saklı procedure'ü ancak bir defa oluşturabileceğiniz. Bu saklı yordam üzerinde tekrar değişiklik yapmak isterseniz üzerine sağ tıklayıp "Modify" komutunu vererek gelen ekranda değişiklikleri yapınız.

Şimdilik bu kadar, gelecek yazılarımızda gelecek talepler üzerine yeni bilgiler vereceğiz. Bu anlattıklarımızı uygulamayı sakın unutmayın. Microsoft web sitesinden SQL Server'i inidirip deneyebilirsiniz.  

 

MySQL'de Veritabanı ve Tablo Oluşturma
MySQL Veritabanında Parametreli Stored Procedure oluşturma
MySQL Veritabanında Parametresiz Stored Procedure Oluşturma

Mutlu kodlamalar,
Oğuzhan TAŞ
Mart, 2018


Bookmark and Share