Stored Procedure Nedir? Nasıl Oluşturulur?

Bir stored procedure (yapısal yordam veya saklı yöntem) kısacası, hazırlamış olduğumuz T-SQL kodunu kayıt edebildiğimiz SQL komutlarıdır. Böylece komutumuzu tekrar tekrar kullanılabilir hale getirebiliriz.

Bu yüzden Stored Procedure yapısını, tekrar tekrar yazıp sıkça kullandığımız bir SQL sorgumuz varsa bu komutlarımızı Stored Procedure olarak kaydedip ardından, kodumuzu çalıştırmamız gerektiğinde Stored Procedure‘yi ismiyle çağırıp kullanırız.

Ayrıca Stored Procedure yapısına parametrelerde verebiliriz. Böylece, Stored Procedure çağırdığımız yerde parametre değerlerine göre hareket edilebilir şekle sokabiliriz.

Stored Procedure, veri tabanı üzerinde saklandığından dolayı daha hızlı çalışırlar bu nedenle normal kodla yaptığımız işlemden daha iyi performans sağlar. SP’ler ilk çalıştıklarında derlenirler. Tekrar çalıştıklarında derlenmezler. Bu da performansa artı etki yaparç.

Son olarak, Stored Procedure kullanım şekliyle C# da sıklıkla kullandığımız metotlara benzetebiliriz. Kod tekrarını önlemek ve kodumuz istediğimiz yerde istediğimiz parametrelerle çalıştırmamıza yarar.

#Ayrıca bakınız: C# – Metot Nedir?

http://alkanfatih.com/metot-nedir-nasil-kullanilir-c-ile-metot-olusturma/

Stored Procedure Oluşturma

CREATE PROCEDURE procedure_ismi
AS
  sql ifademiz
GO;

Stored Procedure Çağırma

EXEC procedure_ismi;

Örnek Kullanım

--Stored Procedure Oluşturma.
CREATE PROCEDURE SP_UrunGetir
AS
  SELECT * FROM Tbl_Urun
GO;

--Stored Procedure Çağırma.
EXEC SP_UrunGetir

Parametre Kullanarak Stored Procedure Oluşturma

--Tek Parametreli Stored Procedure Oluşturma
CREATE PROCEDURE SP_ParamUrunGetir @KatID int
AS
   SELECT * FROM Tbl_Urun WHERE KategoriID = @KatID
GO

--Tek Parametreli Stored Procedure Oluşturma Çağırma
EXEC SP_ParamUrunGetir @KatID=1

--Çok Parametreli ve NULL geçilebilir Stored Procedure Oluşturma
CREATE PROCEDURE SP_MultiParamUrunGetir @UrnKd nvarchar(5), @UrnAd nvarchar(50)=NULL
AS
   SELECT * FROM Tbl_Urun WHERE UrunKodu = @UrnKd OR UrunAdi = @UrnAd
GO

--Çok Parametreli ve NULL geçilebilir Stored Procedure Çağırma
EXEC SP_MultiParamUrunGetir @UrnKd='02686', @UrnAd = 'Son in Law'
EXEC SP_MultiParamUrunGetir @UrnKd='02686'

#Ayrıca bakınız: Örnek veri tabanı

http://alkanfatih.com/e-ticaret-sitesi-veri-tabanin-planlanmasi-ve-gelistirilmesi/

Leave a Reply

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