[英]“Data type mismatch in criteria expression” error in Access SQL query from C#
I am getting below Error, When I put Multiple Conditions with WHERE Clause. 当我在WHERE子句中添加多个条件时,我遇到错误。 Error:- Data type mismatch in criteria expression. 错误:-条件表达式中的数据类型不匹配。
My Query:- 我的查询:
this.query = "UPDATE [Attendance] SET [TimeOut]='" + DateTime.Now.ToShortTimeString() + "' WHERE [Emp_Id]='" + txtEmpId.Text + "'and[Date]='" + this.Date + "'";
Access SQL tends to be rather flexible when accepting Date/Time values as strings. 当接受日期/时间值作为字符串时,Access SQL往往相当灵活。 However, since you really should be using a parameterized query anyway because 但是,由于您确实应该使用参数化查询,因为
dd-mm-yyyy
format, 它们可以正确处理日期,因此您的代码不会破坏设置为dd-mm-yyyy
格式的计算机上的日期, consider using the following approach 考虑使用以下方法
this.query = "UPDATE [Attendance] SET [TimeOut]=? WHERE [Emp_Id]=? AND [Date]=?";
cmd.CommandText = this.query;
cmd.Parameters.AddWithValue("?", DateTime.Now.ToString("H:mm:ss"));
cmd.Parameters.AddWithValue("?", txtEmpId.Text);
cmd.Parameters.AddWithValue("?", this.Date);
cmd.ExecuteNonQuery();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.