DataReader不产生带有WHERE子句的行

本文关键字:WHERE 子句 DataReader | 更新日期: 2023-09-27 18:12:05

我有一个访问2010数据库,当我省略'WHERE'子句时,DataReader返回行,但是我已经在access中运行查询,并且它确实返回包含WHERE子句的必要行。它运行在access中而不是c#中有什么原因吗?

    con.Open();
    //DataTable dt = new DataTable();
    //dt.Columns.Add("PrimaryDate", typeof(string));
    //dt.Columns.Add("Candidate/Contact", typeof(string));
    //dt.Columns.Add("Phone", typeof(string));
    //dt.Columns.Add("Subject", typeof(string));
    //dt.Columns.Add("Comment", typeof(string));
    //dt.Columns.Add("User", typeof(string));
    OleDbCommand getCalenderCommand = con.CreateCommand();
    getCalenderCommand.CommandText = "SELECT April2014.PrimaryDate FROM April2014   ;";//WHERE April2014.PrimaryDate LIKE '*"+01042014+"'
    OleDbDataReader dr = getCalenderCommand.ExecuteReader();
    if (dr.HasRows)
       {
         while(dr.Read())
          {
            //dt.Rows.Add(new object[] { dr.GetString(0), dr.GetString(1), dr.GetString(2),       dr.GetString(3), dr.GetString(4), dr.GetString(5) });
           }
       dr.NextResult();
       }
     dr.Close();
    con.Close();

DataReader不产生带有WHERE子句的行

使用ymd格式比较日期

getCalenderCommand.CommandText = "SELECT April2014.PrimaryDate FROM April2014 WHERE April2014.PrimaryDate LIKE '*"+20140401+"'

此比较为2014年4月1日