在SQL表integralImage(I)
和Date_Of_Birth
中,数据类型为Date_Of_Joining
。我需要执行date
。
我有这段代码并且显示错误 - update
请帮忙。
Conversion failed when converting date and/or time from character string.
答案 0 :(得分:3)
除了将用户变量直接发送到数据库的SQL Injection问题之外,我建议使用参数化查询来简化您尝试做的事情。
SqlCommand cmd7 = new SqlCommand("UPDATE Employees SET Designation = @designation, Employee_Subgroup = @subgroup, Date_Of_Birth = @dateofbirth, Date_Of_Joining = @dateofjoining Where Employee_Name = @employeename", con7);
cmd7.Parameters.AddWithValue("designation", textBox_BEUpdtD.Text);
cmd7.Parameters.AddWithValue("subgroup", comboBox_BEupdt.Text);
cmd7.Parameters.AddWithValue("dateofbirth", dateTimePicker_DOBUpdt.Value.Date);
cmd7.Parameters.AddWithValue("dateofjoining", dateTimePicker_DojUpdt.Value.Date);
cmd7.Parameters.AddWithValue("employeename",comboBox_EmpNm.Text);
con7.Open();
int o = cmd7.ExecuteNonQuery();
MessageBox.Show(o +" : Record has been updated")
也就是说,您的数据库架构存在一些问题。我强烈建议您不要关键员工姓名,因为: A)它不一定是唯一的, B)可能会以这种形式输入错误,因为它只是一个纯文本框, C)可能随时间而变化(例如婚姻等)