0

我有一个带有 datagridview 的应用程序,我直接从数据库绑定信息,我有一个名为deadlineDateTime 类型的列,该列包含截止日期。

在我的 C# 应用程序中,我遍历 datagridview 中的所有行并获取包含截止日期的特定列,然后更新它,例如:

public void reformatDates() {
        string endDate = null;
        foreach (DataGridViewRow rw in dataGridView1.Rows)
        {
            endDate = rw.Cells[5].Value.ToString();
            rw.Cells[5].Value = getCountDown(endDate);
        }
    }

函数getCountDown(DateTime endDate)以字符串形式获取天数、小时数和分钟数的倒计时。

一切都按预期工作,但是当我遍历所有行时。如果我有大量行说 5000 行怎么办。我是否需要遍历所有这些并更新每个单元格?

我用来从数据库绑定信息的函数是 Bind(string sqlquery),我目前这样称呼它:

      Bind("SELECT statut,title,deadline FROM taches WHERE 1");

有没有办法直接从数据库中获取倒计时(以天,小时和分钟为单位)我的意思是这样

的伪代码:

      Bind("SELECT statut,title,(DateNow-deadline) FROM taches WHERE 1");

任何帮助将不胜感激。谢谢

4

1 回答 1

0

如果我理解正确,这就是您想要的:

Bind("SELECT statut,title,TimeDiff(sysdate(),deadline) FROM taches WHERE 1");

完整参考:https ://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_sysdate

于 2013-02-19T11:23:26.070 回答