在C#中按日期从MS Access数据库中选择数据 [英] select data from ms access database by date in c#
本文介绍了在C#中按日期从MS Access数据库中选择数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从C#中的ms Access数据库中选择数据,我使用此查询
i want to select data from ms access database in c# i use this query
da = new OleDbDataAdapter(
"SELECT [Column1],[Column2],[Column3],[Date] from [Total] Where [Date] between #"
+ dateTimePicker2.Value.ToString()
+ "# AND #"
+ dateTimePicker3.Value.ToString()
+ "#",
VCON);
返回我为空 请帮助我.
it's return me null please help me.
推荐答案
您必须将日期格式设置为:
You must format date like :
dateTimePicker2.Value.ToString("yyyy/MM/dd")
您也可以:
da = new OleDbDataAdapter(
"SELECT [Column1],[Column2],[Column3],[Date] from [Total] Where [Date] between "
+ dateTimePicker2.Value.ToString("#yyyy/MM/dd#")
+ " AND "
+ dateTimePicker3.Value.ToString("#yyyy/MM/dd#") ,
VCON);
但是,我建议您使用Parameter避免SQL注入,例如:
But, I advice you to use the Parameter to avoid SQL injections , like this :
string query = "SELECT [Column1],[Column2],[Column3],[Date] from [Total] Where [Date] " +
"BETWEEN @startDate AND @endDate";
OleDbCommand cmd = new OleDbCommand(query, VCON);
cmd.Parameters.AddWithValue("@startDate ", DbType.DateTime).Value =
dateTimePicker1.Value.ToString("yyyy/MM/dd");
cmd.Parameters.AddWithValue("@endDate ", DbType.DateTime).Value =
dateTimePicker2.Value.ToString("yyyy/MM/dd");
da = new OleDbDataAdapter(cmd);
这篇关于在C#中按日期从MS Access数据库中选择数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文