无需时间从数据库中选择DATE

时间:2017-08-11 18:32:42

标签: c# mysql

我试图从我的一个数据库表中选择DATE,我使用date作为主键,但是当我检索DATE时,也有时间是0:00:00。我只需要DATE将它插入组合框中,然后再将其作为PK在另一个表中的数据库中写入。

public void race_combo()
{
    MySqlConnection con = new MySqlConnection(connection);
    MySqlCommand cmd = new MySqlCommand("SELECT * FROM race", con);
    MySqlDataReader msdr;

    try
    {
        con.Open();
        msdr = cmd.ExecuteReader();
        while (msdr.Read())
        {
            string team_id = msdr.GetString("id_race");
            MessageBox.Show(team_id);
            comboBox4.Items.Add(team_id);
            comboBox6.Items.Add(team_id);
            comboBox9.Items.Add(team_id);

        }
        con.Close();
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

数据库表: http://prntscr.com/g7cadr

这是我得到的输出,我相信它与GetString有关,但我不确定它是如何不同的。

http://prntscr.com/g7cayj

3 个答案:

答案 0 :(得分:2)

首先使用GetDateDime()将该值读作ToString,然后使用DateTime team_id = msdr.GetDateTime("id_race"); String team_id_string = team_id.ToString("yyyy-MM-dd"); MessageBox.Show(team_id_string); comboBox4.Items.Add(team_id_string); comboBox6.Items.Add(team_id_string); comboBox9.Items.Add(team_id_string); 转换为您选择的任何格式的字符串:

lapply

答案 1 :(得分:0)

最简单的方法是使用DATE()在mySQL查询中转换它:

SELECT columnname, DATE(datecolumn) FROM .....

答案 2 :(得分:0)

在查询中使用DATE_FORMAT函数

SELECT DATE_FORMAT(id_race , "%Y-%m-%d") AS id_race FROM race

代码:

public void race_combo()
{
    MySqlConnection con = new MySqlConnection(connection);
    MySqlCommand cmd = new MySqlCommand("SELECT DATE_FORMAT(id_race , "%Y-%m-%d") AS id_race FROM race", con);
    MySqlDataReader msdr;

    try
    {
        con.Open();
        msdr = cmd.ExecuteReader();
        while (msdr.Read())
        {
            string team_id = msdr.GetString("id_race");
            MessageBox.Show(team_id);
            comboBox4.Items.Add(team_id);
            comboBox6.Items.Add(team_id);
            comboBox9.Items.Add(team_id);

        }
        con.Close();
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}