我有一个访问2010数据库,当我省略' WHERE'时,DataReader会返回行。但是我在Access中运行了查询,它确实返回了包含WHERE子句的必要行。是否有理由在访问中运行而不是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();
答案 0 :(得分:0)
使用ymd格式来比较日期,如
getCalenderCommand.CommandText = "SELECT April2014.PrimaryDate FROM April2014 WHERE April2014.PrimaryDate LIKE '*"+20140401+"'
此比较是2014年4月1日