C# da parametre kullanarak Sql Procedure oluşturmak.

Samet.Sayman

Öğrenci
Katılım
25 Haziran 2012
Mesajlar
19
Reaksiyon puanı
0
Puanları
0
Herkese Merhaba.
Direk sorunumu anlatayım.
Sql de parametre yardımıyla bir Arama Procedure'ü oluşturmak istiyorum.
Örnek olarak:
Kod:
------------------------------------------------------------------------------------------------------------------------------


[LIST]
[*] Bu kısımda Sql Procedure'ünü oluşturdum. 
[/LIST]
------------------------------------------------------------------------------------------------------------------------------  

ALTER PROCEDURE Gonullu_Arama_Adi @Adi varchar(50)                     
    /*                                                                                                         
    (
    @parameter1 int = 5,
    @parameter2 datatype OUTPUT
    )                                                                                                           
    */
AS select Adi from Gonullu where Adi like @Adi+ '%'
    /* SET NOCOUNT ON */
    RETURN 

------------------------------------------------------------------------------------------------------------------------------ 

[LIST]
[*]  Burada kod karışıklığını önlemek için yeni bir public void hazırladım. (İsmini hatırlamadığım için "Public void" dedim.) 
[/LIST]
------------------------------------------------------------------------------------------------------------------------------  

public void Gonullu_Arama_Adi()
        {
             SqlConnection Engelsiz_conn = new SqlConnection("Data  Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Engelsiz Yaşam\\Engelsiz  Yaşam\\EngelsizYaşam.mdf;Integrated Security=True;Connect  Timeout=30;User Instance=True");
            Engelsiz_conn.Open();
            SqlCommand calistir = new SqlCommand();
            calistir.Connection = Engelsiz_conn;
            calistir.CommandText = "Gonullu_Arama_Adi";
            calistir.CommandType = CommandType.StoredProcedure;                                    
            calistir.Parameters.AddWithValue("@Adi", Gnull_Arama_txtbx.Text);                         
            calistir.ExecuteNonQuery();
            Engelsiz_conn.Close();
        }
---------------------------------------------------------------------------------------------------------------------------------------------------

[LIST]
[*]Ve  hazırladığım Public void'i Buton içersinde kullandım. Ancak düşüncem şu  ki Arama sorgusu işleme giriyor fakat aramayı yaptıktan sonra  DataGridview'e  herhangi bir değer döndürmüyor. Sonraki yaptırdığım Listelemede ise tüm  tabloyu bana  listeleyip karşıma getiriyor. 
[/LIST]
---------------------------------------------------------------------------------------------------------------------------------------------------   

 private void Gnull_Ara_bton_Click(object sender, EventArgs e)
        {
            Gonullu_Arama_Adi();                                 
            Listele_Gonullu();                                     
        }                                                                     

----------------------------------------------------------------------------------------------------------------------------------------------------
Bu tarz uygulamalar denedim ama bi türlü başarılı olamadım.
Sonuç olarak bu anlattığım konuyla ilgili bilgisi olan arkadaşlar yardımcı olabilirlerse çok mutlu olurum.
Şimdiden herkese TEŞEKKÜR EDERİM...
 

Janmark

Doçent
Katılım
22 Temmuz 2011
Mesajlar
915
Reaksiyon puanı
2
Puanları
218
Break Point koyarak nereden ne değerler gelip gelmediğini daha rahat görebilirisin.
 

Janmark

Doçent
Katılım
22 Temmuz 2011
Mesajlar
915
Reaksiyon puanı
2
Puanları
218
Program çalışırken nerelere gittiğini hangi değişkenin hangi değerleri aldığını görmek için Break Point kullanılır. Bunu hangi satırda yapmak istiyorsanız o satıra gelinir ve f9'a basılır, kırmızı bir renk alacaktır, program çalıştığında ise f9'a bastığın yere gelene kadar program çalışır ve oraya geldiği zaman program seni bekler f10 ile adımları yürütebilir f11 ilede Method, class vb. varsa onun içine girerek ilerler. :)
 

Samet.Sayman

Öğrenci
Katılım
25 Haziran 2012
Mesajlar
19
Reaksiyon puanı
0
Puanları
0
Program çalışırken nerelere gittiğini hangi değişkenin hangi değerleri aldığını görmek için Break Point kullanılır. Bunu hangi satırda yapmak istiyorsanız o satıra gelinir ve f9'a basılır, kırmızı bir renk alacaktır, program çalıştığında ise f9'a bastığın yere gelene kadar program çalışır ve oraya geldiği zaman program seni bekler f10 ile adımları yürütebilir f11 ilede Method, class vb. varsa onun içine girerek ilerler. :)

Yardımınız için Teşekkür ederim hemen deniyorum. :)))
 

Samet.Sayman

Öğrenci
Katılım
25 Haziran 2012
Mesajlar
19
Reaksiyon puanı
0
Puanları
0
Dediğinizi yaptım ama bu işlerde yeni sayılırım demiştim yani karşıma çıkanlardan pek bişey anladığım söylenemez.
 

Samet.Sayman

Öğrenci
Katılım
25 Haziran 2012
Mesajlar
19
Reaksiyon puanı
0
Puanları
0
Herşey için teşekkür ederim.
Sorunumu halletmiş bulunmaktayı.
Kodları paylaşıyorum ilgilenen arkadaşlar kodları kendilerine göre düzenledıkten sonra diledikleri gibi kullansınlar.
Kod:
SqlConnection Engelsiz_conn = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Engelsiz Yaşam\\Engelsiz Yaşam\\EngelsizYaşam.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
             Engelsiz_conn.Open();
             DataSet ds = new DataSet();
             DataTable Dt = new DataTable();
             SqlDataAdapter adaptor = new SqlDataAdapter("Select * From Gonullu where Adi like '" + Gnull_Arama_txtbx.Text + "%'", Engelsiz_conn);
             adaptor.Fill(Dt);
             Gnull_Datagrid.DataSource = Dt;
 
Üst