Coder

18 Haziran 2013

Database bağlı formda arama yapmak

Filed under: ADO.NET,C# — Etiketler:, , , — Murat M.oğlu @ 14:41

Veritabanına bağlı windows form uygulamasında form içinde database deki verileri arama yaparak listview veya başka bir kontrolde göstermek için yapmamız gereken standart olarak yaptığımız ado.net olayında sqlcommand satırındaki sorguya ek parametre ekleyerek sorguyu gerçekleştirmek.

veritabani-form-arama

Form ekranına resimdeki gibi textbox buton ve gelecek olan verileri gösterebilmek için listview kontrolü sürükleyip yerleştirin. Örnek içinde iki şekilde arama yapabilirsiniz. Biri Google daki gibi arama yaparken harfleri girdikçe çıkacak olan sonuçları anında gösteren(bu büyük veri için aramanızda performans kaybı yaşanacaktır), diğeri ise aratılacak olan kelimeyi girdikten sonra buton ile arama işlemini yaptırmak.

[wpdm_file id=14]

Buton ile aratma yapmak için buton clik olayına yazılacak kod;

[cc lang='csharp' ]SqlConnection sql = new SqlConnection(“server=.; database=coder; trusted_connection=true;”);

private void btnAra_Click(object sender, EventArgs e)
{
lvListe.Items.Clear();
SqlCommand doldur = new SqlCommand(“select * from tblDeneme where ad like ‘%” + txtKelime.Text + “%’”, sql);
sql.Open();
SqlDataReader rdr = doldur.ExecuteReader();
while (rdr.Read())
{
ListViewItem li = new ListViewItem();
li.Text = rdr["ad"].ToString();
li.SubItems.Add(rdr["soyad"].ToString());
lvListe.Items.Add(li);
}

sql.Close();
}[/cc]

Textbox’un TextChanged olayına yazılacak kod;

[cc lang='csharp' ] private void txtKelime_TextChanged(object sender, EventArgs e)
{
lvListe.Items.Clear();
SqlCommand doldur = new SqlCommand(“select * from tblDeneme where ad like ‘%” + txtKelime.Text + “%’”, sql);
sql.Open();
SqlDataReader rdr = doldur.ExecuteReader();
while (rdr.Read())
{
ListViewItem li = new ListViewItem();
li.Text = rdr["ad"].ToString();
li.SubItems.Add(rdr["soyad"].ToString());
lvListe.Items.Add(li);
}

sql.Close();
}[/cc]

Powered by WordPress