Makale Özeti

Bu makalemizde Sql Server 2005 uzerinde Visual Studio arayuzunu kullanarak tamamen C# dili ile bir stored procedure nasil yazilir bunu inceleyecegiz.VS arayuzu ile Sql Server uzerinde bir Sp yazmak icin gercekten gecerli bir nedene ihtiyacimiz bulunmalidir.Normal olarak Sql Server'in programlama dili olan T-Sql ile bircok islemi gerceklestirebiliyoruz o halde neden C# dilini kullanarak bu islemi gerceklestirelim.

Makale

Bu makalemizde Sql Server 2005 uzerinde Visual Studio arayuzunu kullanarak tamamen C# dili ile bir stored procedure nasil yazilir bunu inceleyecegiz.VS arayuzu ile Sql Server uzerinde bir Sp yazmak icin gercekten gecerli bir nedene ihtiyacimiz bulunmalidir.Normal olarak Sql Server'in programlama dili olan T-Sql ile bircok islemi gerceklestirebiliyoruz o halde neden C# dilini kullanarak bu islemi gerceklestirelim.Orneklemek gerekirse kayit setleri ile ilgili islem yapacagimiz ornegin onların uzerinde teker teker gezinmemiz gerekiyorsa ve siklikla cursor'lari kullanmamiz gerekiyorsa o zaman hemn bu tip zor isleri kolaylastırma da hem de T-Sql 'in bazi islerimizi zorlastiran kullanimlari karsimiza ciktigi zaman yapmamiz gereken UDSP kullanmak olacaktir.
C# tarafinda bu tip islemler cok daha kolay gerceklestirilebilir ve Ado.net 'in bize sunduklari....
Oncelikle yapmamiz gereken islemleri basit ve adim adim izliyor olalim. 1. adimimiz Vs uzerinde bir Database uygulamasi yaratmak olacak. Ardindan bu proje templati seciminden hemen sonra karsimiza hangi baglantiyi referans olarak alacagiz bu ekran cikiyor isterseniz yeni bir baglanti ekleyebilir yada mevcut olani secebilirsiniz. Bir sonra ki adimda ise acilan projede sag tiklayip Add > Stored Procedure seciyoruz. Ardindan karsimiza gelen C# ekraninda bir Class icerisinde bir metot oldugunu ve burada kullanilan niteliginde onun bir Stored Procedure oldugunu betimlemis bunulunuyor. Burada yine dikkat edilmesi gerekn nokta uygulamamizi yaratirken referans olarak kullandigimiz baglantiya esas yani o veritabani uzerinde calisacak bir sp yaratacagiz elbette istersek yine C# ekraninda kendimize ait bir baska baglanti daha gerceklestirebiliriz. Ve burada dikkat edilmesi gereken nokta SqlConnection sinifimiza verdigimiz yeni bir parametre o da "Context Connection=true" bu ben zaten sana uygulamayi yaratirken bir baglanti referans ve gerekli guvenlik ayarlamalarini vermis oldugumuzu soyluyoruz.Daha once de belirttigimiz gibi SqlConnection sinifini kullanarak yeni bir baglanti da kesinlikle yaratabiliriz. Simdi burada kodumuzu yazarken karsimiza gelen yeni bir sinifimiz o da "SqlContext" uyelerinden Pipe ozelligini kullanarak kullanildigi ortama cesitli sekillerde deger aktarimini sagliyor.Pipe uzerinden gidildiginde Send isimli bir metot karsimiza geliyor.Biz bu metodu kullanarak geriye mesaj gonderebiliriz. Yine cok onemli olan SqlContext.Pipe.ExecuteAndSend isimli metodumuz var bu da icerisine SqlCommand turunden aldigi parametreyi geriye bu komutun dondurdugu veya olusturdugu sonuc kumesini geriye dondurebiliyor. Oncelikle yazmis oldugumuz kodu sizlerle paylasayim.. Bu kodu Build etme isleminin ardindan Sql Server'imiz uzerine Deploy etme islemi uygulayacagiz. Deploy isleminin ardindan simdi Sql Server uzerinde yeni bir Query ekrani aciyoruz ve Sp'miz orada mi calistirip bakicaz ? Bu makale ile ilgili soru,oneri ve goruslerinizi soner.yasar@bilgeadam.com adresine gonderebilirsiniz.