将DataGridView中的日期插入数据库?

时间:2016-08-14 00:29:40

标签: c# sql datagridview

在我的应用程序中,我有一个dataGridview,它有一个从数据库中获取数据的列,它代表一个date类型的列,当用户点击它时有一个按钮,它应该插入当前选择的值另一个表中具有date类型列的列。 我试着这样做:

 private void btnInesrtDate_Click(object sender, EventArgs e)
        {
            string date = dataGridView1.CurrentRow.Cells[2].ToString();
            string sql = $"Insert Into BirthDates (Name, DateOfBirth)Values('{txtName.Text}','{date}')";
            conn.Open();
            SqlCommand command = new SqlCommand(sql, conn);
            command.ExecuteNonQuery();
            conn.Close();
            MessageBox.Show("Success");
        }

但我收到错误说:

  

从字符转换日期和/或时间时转换失败   字符串。

1 个答案:

答案 0 :(得分:0)

查询看起来不正确,请尝试删除额外的' {'如果来自UI的日期格式是正确的,那么从查询中应该没问题。请参阅下面的代码示例:

    SqlConnection conn = new SqlConnection(@"Connection String;");

    string date = DateTime.Now.ToString("MM/dd/yyyy");
    string sql = $"Insert Into BirthDates (Name, DateOfBirth)Values('" + txtName.Text + "','" + date +"')";
    conn.Open();
    SqlCommand command = new SqlCommand(sql, conn);
    command.ExecuteNonQuery();
    conn.Close();