我在使用C#插入SQL数据库时遇到问题。我得到的错误是
必须声明标量变量“ @campusVisitDate”。
其中@campusVisitDate是参数,我提供一个值,然后将其添加到数据库中。
这是给我问题的代码
conn2.Open();
SqlCommand cmd = conn2.CreateCommand();
DateTime date = DateTime.Now;
date.ToString("yyyy-MM-dd", System.Globalization.CultureInfo.GetCultureInfo("en-US"));
cmd.CommandText = "INSERT INTO TableName (DateRequested, OnCampus, OnCampusVisitDate, Name, Title, Email, Phone, Fax, MinCumGPA, Keywords, EmployerNotes, ThirdParty, JobFair, CompanyURL) VALUES (@date,@onCampus,@campusVisitDate,@name,@title,@email,@phone,@fax,@mcgpa,@keywords,@empnotes,@tp,@jobfair,@compurl)";
cmd.Parameters.AddWithValue("@date",date);
if (campusvisit == 1)
{
cmd.Parameters.AddWithValue("@onCampus", 1);
cmd.Parameters.AddWithValue("@campusVisitDate",campusVisitDate);
}
else
{
cmd.Parameters.AddWithValue("@onCampus", 0);
}
OnCampusVisitDate列的类型为DateTime,变量CampusVisitDate的格式也已设置为DateTime。
无论出于何种原因,这都是唯一给我带来问题的列,其他所有列都可以,即使是DateTime类型的DateRequested也可以。
也许我只是缺少一些小东西,但是我已经遇到了一段时间了,希望获得一些帮助。
(如果您需要更多代码,请询问,我将其发布)
最佳答案
else
{
cmd.Parameters.AddWithValue("@onCampus", 0);
cmd.Parameters.AddWithValue("@campusVisitDate",null);
}