繁体   English   中英

在C#中按日期从MS Access数据库中选择数据

[英]select data from ms access database by date in c#

我想从C#中的ms Access数据库中选择数据,我使用此查询

da = new OleDbDataAdapter(
    "SELECT [Column1],[Column2],[Column3],[Date] from [Total] Where [Date] between #" 
        + dateTimePicker2.Value.ToString() 
        + "# AND #" 
        + dateTimePicker3.Value.ToString() 
        + "#", 
    VCON);

返回我为空,请帮助我。

您必须将日期格式设置为:

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注入,如下所示:

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);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM