Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从字符串转换日期时间时出现语法错误_C#_Sql Server_String_Datetime_Type Conversion - Fatal编程技术网

C# 从字符串转换日期时间时出现语法错误

C# 从字符串转换日期时间时出现语法错误,c#,sql-server,string,datetime,type-conversion,C#,Sql Server,String,Datetime,Type Conversion,我试图使用以下代码在ms sql表中插入一行 SqlCMDText = "INSERT INTO attendance(date, time_in, time_out, time_total, status,"; SqlCMDText += " is_late_in, is_half_day, is_early_out, user_id, remarks)"; SqlCMDText += " VALUES('@yestarday_date', 'NA', 'NA', 'NA', 'ABSENT

我试图使用以下代码在ms sql表中插入一行

SqlCMDText = "INSERT INTO attendance(date, time_in, time_out, time_total, status,";
SqlCMDText += "  is_late_in, is_half_day, is_early_out, user_id, remarks)";
SqlCMDText += " VALUES('@yestarday_date', 'NA', 'NA', 'NA', 'ABSENT', 'NA', 'NA', 'NA', 52, 'DONE BY PORTAL')";
SqlCMD = new SqlCommand(SqlCMDText, SqlCON);
SqlCMD.Parameters.AddWithValue("@yestarday_date", Yestarday);
SqlCMD.ExecuteNonQuery();
其中Yestarday是一个字符串变量,包含短日期格式,如“04/04/2011”。我还尝试传递datetime变量本身,但它不起作用,我得到了如下相同的错误

“从字符串转换日期时间时出现语法错误”

我应该使用什么格式使其工作


谢谢。

您应该直接使用
DateTime
对象。如果您遇到另一个错误,请发布该错误。

使用
DateTime.Parse(Yestarday)


请尝试以下代码

CurDate = DateTime.ParseExact(@Yestarday, "dd/MM/yyyy", System.Globalization.CultureInfo.CurrentCulture, System.Globalization.DateTimeStyles.None)

你的专栏是datetime?因此,添加一个参数作为日期时间应该是有效的,感谢Ranhiru的工作。解析(Yestarday)。但我仍然不明白为什么DirectDateTime对象不起作用,我认为它应该起作用。
CurDate = DateTime.ParseExact(@Yestarday, "dd/MM/yyyy", System.Globalization.CultureInfo.CurrentCulture, System.Globalization.DateTimeStyles.None)