我是c#的新手。
我需要添加一个Find_Click
按钮,它具有的功能可以帮助我计算数据库表中的行数,当l键在文本框内的值时,然后显示计数值。
问题是,无法计算行数,因为里面的值是Datetime。
有人可以帮我修改我的代码吗?这是:
private void Find_Click(object sender, EventArgs e)
{
string search = FindDateTime.Text;
int result = 0;
DataRow[] returnedRows;
returnedRows = RetailCamDataSet1.Tables["pcPeopleCountingValue"]
.Select("ValueDateTime='" + search + "'");
result = returnedRows.Length;
if (result > 0)
{
DataRow RetailCamDataRow1;
RetailCamDataRow1 = returnedRows[0];
MessageBox.Show(returnedRows.Length.ToString());
}
else
{
MessageBox.Show("No such Record.");
}
}
答案 0 :(得分:0)
以下行应更改为:
returnedRows = RetailCamDataSet1.Tables["pcPeopleCountingValue"]
.Select("ValueDateTime=#" + search + "#");
如果您的search
变量的日期时间格式正确。
来自你的评论。您无法在BETWEEN
方法中使用Select()
,而是可以执行以下操作:
RetailCamDataSet1.Tables["pcPeopleCountingValue"]
.Select("ValueDateTime < #" + search" +
"00:00:00# AND ValueDateTime < #" + search + "23:59:59#");
您也可以使用数据集lambda扩展,请参阅:https://stackoverflow.com/a/3924140/368070