我试图在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();
其中yesterday是一个字符串变量,包含短日期格式,如"04/04/2011"。我也尝试传递datetime变量本身,但它不工作,我得到相同的错误如下。
"从字符串转换日期时间语法错误"
我应该用什么格式使它工作?
谢谢。
使用DateTime.Parse(Yestarday)
SqlCMD.Parameters.AddWithValue("@yestarday_date", DateTime.Parse(Yestarday));
您应该直接使用DateTime
对象。
试试下面的代码。
CurDate = DateTime.ParseExact(@Yestarday, "dd/MM/yyyy", System.Globalization.CultureInfo.CurrentCulture, System.Globalization.DateTimeStyles.None)