我正在构建一个存储一组日期时间的应用程序,以跟踪我何时打印特定报告。该报告由第二个表中的信息组成,该表也有日期时间。我试图让报告用仅在第一个表中的最后一个日期时间之后的记录填充数据网格视图。
第一个表称为“deliverylog”,该表存储过去的打印日期。第二个表称为“joblog”,它存储以前的作业条目的记录。
当我运行该程序时,它工作得很好,并用最后一个日期之后的所有记录填充网格视图,但它没有被改进......它只填充日期之后的日期而不是时间。我需要查询将gridview填充到第二个......
DateTime lastDeliveryDate;
private void getLastDelivery() // Sets global variable lastDeliveryDate to the last timestamp entered in the deliverylog table
{
openLogConnection();
try
{
command = new SqlCeCommand("SELECT TOP 1 * FROM deliverylog ORDER BY Id DESC", logConn);
drLogSet = command.ExecuteReader();
while (drLogSet.Read())
{
lastDeliveryDate = Convert.ToDateTime(drLogSet["Timestamp"]);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
logConn.Close();
}
}
private void populateGridView()
{
openLogConnection();
try
{
command = new SqlCeCommand("SELECT * FROM joblog WHERE TimeStamp > @date", logConn);
command.Parameters.AddWithValue("@date", lastDeliveryDate);
dtLogSet = new DataTable();
bsLogSet = new BindingSource();
daLogSet = new SqlCeDataAdapter(command);
cbLogSet = new SqlCeCommandBuilder(daLogSet);
daLogSet.Fill(dtLogSet);
bsLogSet.DataSource = dtLogSet;
dataGridView1.DataSource = bsLogSet;
dataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
logConn.Close();
}
}
任何人都知道如何让这个工作正常吗?我将两个表的时间戳存储为日期时间数据类型,格式如下:“MM/dd/yyyy hh:mm:ss tt”