我在使用 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 类型。
无论出于何种原因,这是唯一给我带来问题的专栏,所有其他专栏都很好,甚至 DateRequested 也是 DateTime 类型。
也许我只是错过了一些小东西,但我已经解决这个问题一段时间了,希望得到一些帮助。
(如果您需要更多代码,请询问,我会发布)