Access C# İki Tarih Arası Sorgu-Between

C# ve access kullanarak veritabanından 2 tarih arası sorguyu alabilmek için

Formunuza 2 adet datetimepicker ekleyin

 

[code]

public OleDbConnection access_baglanti;
public void access_baglan()
{
try
{
access_baglanti = new OleDbConnection();
access_baglanti.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Directory.GetCurrentDirectory() + "\db.accdb";
if (access_baglanti.State == ConnectionState.Closed)
{
access_baglanti.Open();
}
}
catch (Exception hata)
{
MessageBox.Show(hata.Message);
}

}

[/code]

[code]

public void access_kapat()
{
if (access_baglanti.State != ConnectionState.Closed)
{
access_baglanti.Close();
}
}

[/code]

[code]

public DataSet tarih_getir(DateTimePicker d1, DateTimePicker d2,string sorgu)
{
try
{
access_baglan();
OleDbParameter PTarih1, PTarih2;
PTarih1 = new OleDbParameter("tarih1", OleDbType.Date);
PTarih1.Value = d1.Text;
PTarih2 = new OleDbParameter("tarih2", OleDbType.Date);
PTarih2.Value = d2.Text;
OleDbCommand veri = new OleDbCommand(sorgu, access_baglanti);
veri.Parameters.Add(PTarih1);
veri.Parameters.Add(PTarih2);
OleDbDataAdapter da=new OleDbDataAdapter(veri);
DataSet ds = new DataSet();
da.Fill(ds);
access_kapat();
return ds;
}
catch (Exception hata)
{
MessageBox.Show(hata.Message);
return null;
}
}

[/code]

 

Kullanımı ise şu şekilde

[code]

string satis_tarih = "select * from İslemTBL where tarih>= ? and tarih<= ?";
DataSet ds = tarih_getir(dateTimePicker1,dateTimePicker2,satis_tarih);
dataGridView1.DataSource = ds.Tables[0];
dataGridView1.ClearSelection();

[/code]

Yorum yapın