Sign in
Home
Library
Wiki
Learn
Gallery
Downloads
Support
Forums
Blogs
Resources For IT Professionals
United States (English)
Россия (Pусский)
中国(简体中文)
Brasil (Português)
Post an article
Translate this page
Powered by
Microsoft® Translator
Wikis - Page Details
First published by
Yunus DOĞU
(Microsoft Partner)
When:
28 Dec 2011 2:36 AM
Last revision by
Ed Price - MSFT
(Microsoft)
When:
16 Sep 2012 10:38 PM
Revisions:
3
Comments:
2
Options
Subscribe to Article (RSS)
Share this
Can You Improve This Article?
Positively!
Click Sign In to add the tip, solution, correction or comment that will help other users.
Report inappropriate content using
these instructions
.
Wiki
>
TechNet Articles
>
ASP.NET İle Stored Procedure Kullanımı – 1 (No Wizard) (tr-TR)
ASP.NET İle Stored Procedure Kullanımı – 1 (No Wizard) (tr-TR)
Article
History
ASP.NET İle Stored Procedure Kullanımı – 1 (No Wizard) (tr-TR)
Merhaba arkadaşlar, bu makalemizde ASP.NET İle SQL Server üzerinde Stored Procedure oluşturup, oluşturduğumuz stored procedurü ASP.NET Projemizde kullanacağız…
Stored Procedure Nedir?
Ilk olarak kısaca Stored 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. Belirledigimiz sartlara göre, program içinden çagrılarak kullanılırlar. T-SQL deyimleriyle yazılan Store Procedures sadece ilk kez çalıstırıldıklarında derlenirler. Daha sonraki çalıstırma islemlerinde derlenmezler. Bu sayede çalısmalarımızda hız kazanmıs oluruz. Stored Procedürlerin bir baska artısı da çok güvenlidir.
Örnek
Create Proc LastTenPerson
as
select top 10 ContactID, FirstName, LastName from Person.Contact order by ContactID desc
Bu Stored procedurü çalıstıralım;
exec LastTenPerson > bize geri dönen sonuç;
Bize son 10 kaydı geri döndürdü.
Simdi isterseniz bu olusturdugumuz Stored Procedurü, ASP.NET Projesinde kullanalım; lk olarak bir web projesi açalım;
Projemizi olusturduktan sonra sayfamıza bir adet grid ekleyelim;
Evet simdi 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 sayfamızda kullanacagımız degiskenleri tanımlayalım;
SqlConnection Cnn;
SqlCommand Cmd;
SqlDataAdapter Da;
DataSet Ds;
Simdi Kaydımızı listeleyecek olan voidi yazalım(Isterseniz function olarak yada class içerisinde kullanabilirsiniz).
private void GetLastTenPerson()
{
Cnn = new SqlConnection("Data Source=localhost; Initial Catalog=AdventureWorks; trusted_connection=yes");//DB Baglantısı
Cmd = new SqlCommand();
Cmd.CommandType = CommandType.StoredProcedure;//Command Tipi
Cmd.CommandText = "LastTenPerson";//SP Adı
Cmd.Connection = Cnn;//Commandin kullanacagı 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 çagıralım;
protected void Page_Load(object sender, EventArgs e)
{
GetLastTenPerson();
}
Simdi Projemizi çalıstıralım;
Son 10 kaydımızı basarı ile listeledik; Simdi Stored Proceduremizi biraz daha genisletelim ve Bir kriter ekleyelim. Örnegin Firstname'ni biz dısarıdan girelim ve girdigimiz Firstname'e göre kayıtlar listelensin. Bunun için Stored Procedure içerisine dısarıdan bir parametre almalıyız. Biz buna input parametre diyoruz.
Stored Proceduremizin düzenlenmis hali;
Alter Proc LastTenPerson //SP'mizi Alter ettik
@FirstName varchar(20)//Input Parameter
as
select top 10 ContactID, FirstName, LastName from Person.Contact
where FirstName=@FirstName
order by ContactID desc
exec LastTenPerson 'Crystal'
Sonucu görelim;
Firstname'i sadece Crystal olanlar geldi; Simdi bunu ASP.NET tarafında da yapalım; Bunun için projemize bir adet buton ve bir adet textbox ekleyelim. Sayfamızdaki kodları Command out yapalım yada silelim çünkü SP degistigi için çalıstıgında hata verecektir. Button1'e tıklayalım;
protected void Button1_Click(object sender, EventArgs e)
{
Cnn = new SqlConnection("Data Source=localhost; Initial Catalog=AdventureWorks; trusted_connection=yes");
Cmd = new SqlCommand();
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.CommandText = "LastTenPerson";
Cmd.Parameters.AddWithValue("@Firstname", TextBox1.Text);// Dısarıdan Store Procedure parametre ekliyoruz..
Cmd.Connection = Cnn;
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();
}
Simdi projemizi tekrar çalıstıralım ve sonucu görelim.
Yukarıda da görüldügü gibi Firstname'i sadece 'Crystal' olan kayıtlar listelenmektedir.
ASP
,
ASP.NET
,
has broken image
,
tr-TR
Sort by:
Published Date
|
Most Recent
|
Most Useful
Comments
Ed Price - MSFT
16 Sep 2012 10:20 PM
The images aren't showing for me. Thanks for the great contributions!
Page 1 of 1 (1 items)