C# 如何比较今天';s日期与Excel列的日期一起显示在今天';s在C中输入数据#
我需要将今天的日期与Excel中的日期进行比较,以便在DataGridView中显示今天输入的所有数据。我已经尝试了许多代码迭代,但仍然会收到错误,有些并没有显示所需的结果。代码如下:C# 如何比较今天';s日期与Excel列的日期一起显示在今天';s在C中输入数据#,c#,excel,datagridview,oledb,C#,Excel,Datagridview,Oledb,我需要将今天的日期与Excel中的日期进行比较,以便在DataGridView中显示今天输入的所有数据。我已经尝试了许多代码迭代,但仍然会收到错误,有些并没有显示所需的结果。代码如下: private void todayToolStripMenuItem_Click(object sender, EventArgs e) { int day = todaysDate.Day ; int month =todaysDate.Month;
private void todayToolStripMenuItem_Click(object sender, EventArgs e)
{
int day = todaysDate.Day ;
int month =todaysDate.Month;
MessageBox.Show("Month" + month+ "Date" + day, "abc", MessageBoxButtons.OK);
int year = todaysDate.Year;
String name = "Sheet1";
OleDbConnection con = new OleDbConnection(constr);
OleDbCommand oconn = new OleDbCommand("Select * From [" + name + "$] WHERE Date CONTAINS " + day + "AND Date CONTAINS " + month +
"AND Date CONTAINS " + year, con);
try
{
con.Open();
}
catch (Exception)
{
}
OleDbDataAdapter sda = new OleDbDataAdapter(oconn);
DataTable data = new DataTable();
sda.Fill(data);
dataGridView1.DataSource = data;
}
提前感谢。更新
使用带参数的查询,而不是将值注入字符串。这对我来说很好:
OleDbCommand oconn = new OleDbCommand("Select * From [Sheet1$] WHERE Date = @date");
oconn.Connection = connection;
try
{
oconn.Parameters.AddWithValue("@date", DateTime.Now.ToString("MM/dd/yyyy"));
connection.Open();
OleDbDataAdapter sda = new OleDbDataAdapter(oconn);
DataTable data = new DataTable();
sda.Fill(data);
connection.Close();
}
catch (Exception)
{
}
更新
使用带参数的查询,而不是将值注入字符串。这对我来说很好:
OleDbCommand oconn = new OleDbCommand("Select * From [Sheet1$] WHERE Date = @date");
oconn.Connection = connection;
try
{
oconn.Parameters.AddWithValue("@date", DateTime.Now.ToString("MM/dd/yyyy"));
connection.Open();
OleDbDataAdapter sda = new OleDbDataAdapter(oconn);
DataTable data = new DataTable();
sda.Fill(data);
connection.Close();
}
catch (Exception)
{
}
它的“给定错误”条件表达式中的数据类型不匹配它没有给出任何output@Tasneem这对我有效,
数据
得到了正确的行。请检查您的excel文件。您有今天日期的记录吗?是的,我刚刚添加了recordLet us。它的给出错误“条件表达式中的数据类型不匹配它未提供任何output@Tasneem这对我有用,数据
得到正确的行。检查您的excel文件。你有今天的记录吗?是的,我刚刚添加了recordLet。