Merhaba arkadaşlar, bu makalemizde ASP.NET İle SQL Server üzerinde Store Procedure oluşturup, oluşturduğumuz store procedurü ASP.NET Projemizde kullanacağız…
İlk olarak kısaca Store Procedürden bahsedeyim;
Stored Procedures SQL Server üzerinde tutulan T-SQL ifadeleridir. Belli bir görevi yerine getirebilmek amacıyla yapılandırılırlar. SQL Server üzerinde derlenirler. Belirlediğimiz şartlara göre, program içinden çağrılarak kullanılırlar.
T-SQL deyimleriyle yazılan Store Procedures sadece ilk kez çalıştırıldıklarında derlenirler. Daha sonraki çalıştırma işlemlerinde derlenmezler. Bu sayede çalışmalarımızda hız kazanmış oluruz ve güvenlidir.
Örnek bir stored procedure aşağıda yer almaktadır mesela,
Şimdi isterseniz bu oluşturduğumuz Store Procedurü, ASP.NET Projesinde kullanalım;
Create Procedure LastTenPerson
as
select top 10 ContactID, FirstName, LastName from Person.Contact
order by ContactID desc
Bu Store procedurü çalıştıralım;
exec LastTenPerson > bize geri dönen sonuç;

İlk olarak bir web projesi açalım;

Projemizi oluşturduktan sonra sayfamıza bir adet grid ekleyelim;

Evet şimdi kaydımızı görüntüleyecek olan kodları yazalım ilk olarak System.Data ve System.Data.SqlClient namespacelerini sayfamıza ekleyelim…
using System.Data;
using System.Data.SqlClient;
// Daha sonra sayfamizda kullanacagimiz degiskenleri tanimlayalim;
SqlConnection Cnn;
SqlCommand Cmd;
SqlDataAdapter Da;
DataSet Ds;
//Simdi Kaydimizi listeleyecek olan voidi yazalim(Isterseniz function
//olarak yada class içerisinde kullanabilirsiniz).
private void GetLastTenPerson()
{
//DB Baglantisi
Cnn = new SqlConnection("Data Source=localhost; Initial
Catalog=AdventureWorks; trusted_connection=yes");
Cmd = new SqlCommand();
Cmd.CommandType = CommandType.StoredProcedure;//Command Tipi
Cmd.CommandText = "LastTenPerson";//SP Adi
Cmd.Connection = Cnn;//Commandin kullanacagi Connection
if (Cnn.State == ConnectionState.Closed) Cnn.Open();
Da = new SqlDataAdapter(Cmd);
Ds = new DataSet();
Da.Fill(Ds,"table");
GridView1.DataSource = Ds.Tables[0];
GridView1.DataBind();
}
//En son olarak bunu Formun Load’da çagiralim;
protected void Page_Load(object sender, EventArgs e)
{
GetLastTenPerson();
}
Şimdi Projemizi çalıştıralım;

Son 10 kaydımızı başarı ile listelemiş olduk store procedure kullanımı kolay ve daha düzenlidir daha sonradan bu procedureler üzerinden revizyon yapmak daha kolaydır.
Bu makalenin de sonuna geldik. Yeni başlayan arkadaşlara faydalı olması dilekleriyle, sonraki makalelerde de Insert, Update ve Delete işlemlerini inceleyeceğiz görüşmek üzere...