繁体   English   中英

如何在C#中修复“关键字'Function'附近的语法不正确。”

[英]How to fix “Incorrect syntax near the keyword 'Function'.” in c#

我正在尝试将数据库设置为可与我的应用程序一起使用。 但是,每次尝试将数据插入数据库时​​,我都会收到此错误。

System.Data.SqlClient.SqlException

Message =关键字“ Function”附近的语法不正确。
Source = .Net SqlClient数据提供程序

private void insertBtn_Click(object sender, EventArgs e)
{
    conn.Open();
    SqlCommand cmd = new SqlCommand("insert into dbo.Users" + "(Firstname, MiddleName, Lastname,DateofBirth, Nationality, Tshirtsize, Poloshirtsize, Jacketsize, Pantssize, Shoessize, Street, Street2, City, ZipCode, Country, Homephonenumber, Mobilephonenumber, Alternativemobilephonenumber, Workphonenumber, Faxnumber, Emailaddress, Alternativeemailaddress, Skypecontactinformation, Facebooknameorprofilelink, InternationalAirport, DomesticAirportNearest, Function, Secondfunction, Level, Zone, Examinationdate, Examinationlocation, Examiner1, Examiner2)values(@Firstname,@Lastname,@DateofBirth, @Nationality, @Tshirtsize, @Poloshirtsize, @Jacketsize, @Pantssize, @Shoessize, @Street, @Street2, @City, @ZipCode, Country, @Homephonenumber, @Mobilephonenumber,@Alternativemobilephonenumber, @Workphonenumber, @Faxnumber, @Emailaddress, @Alternativeemailaddress, @Skypecontactinformation, @Facebooknameorprofilelink, @InternationalAirport, @DomesticAirportNearest, @Function, @Secondfunction, @Level, Zone, @Examinationdate, @Examinationlocation, @Examiner1, @Examiner2)", conn);
    cmd.Parameters.AddWithValue("@Firstname", firstname.Text);
    cmd.Parameters.AddWithValue("@Lastname", lastname.Text);
    cmd.Parameters.AddWithValue("@MiddleName", middlename.Text);
    cmd.Parameters.AddWithValue("@DateofBirth", bunifuDatePickerOfBirth.Text);
    cmd.Parameters.AddWithValue("@Nationality", nationality.Text);
    cmd.Parameters.AddWithValue("@Tshirtsize", tshirtSize.Text);
    cmd.Parameters.AddWithValue("@Poloshirtsize", poloshirts.Text);
    cmd.Parameters.AddWithValue("@Jacketsize", jacketSize.Text);
    cmd.Parameters.AddWithValue("@Pantssize", pantsSize.Text);
    cmd.Parameters.AddWithValue("@Shoessize", shoesSize.Text);
    cmd.Parameters.AddWithValue("@Street", street.Text);
    cmd.Parameters.AddWithValue("@Street2", street2.Text);
    cmd.Parameters.AddWithValue("@City", city.Text);
    cmd.Parameters.AddWithValue("@ZipCode", zip.Text);
    cmd.Parameters.AddWithValue("@Country", country.Text);
    cmd.Parameters.AddWithValue("@Homephonenumber", homePhone.Text);
    cmd.Parameters.AddWithValue("@Mobilephonenumber", mobilePhone.Text);
    cmd.Parameters.AddWithValue("@Alternativemobilephonenumber", alterMobile.Text);
    cmd.Parameters.AddWithValue("@Workphonenumber", workPhone.Text);
    cmd.Parameters.AddWithValue("@Faxnumber", faxNum.Text);
    cmd.Parameters.AddWithValue("@Emailaddress", email.Text);
    cmd.Parameters.AddWithValue("@Alternativeemailaddress", alterEmail.Text);
    cmd.Parameters.AddWithValue("@Skypecontactinformation", skypeContact.Text);
    cmd.Parameters.AddWithValue("@Facebooknameorprofilelink", facebook.Text);
    cmd.Parameters.AddWithValue("@InternationalAirport", InternationalAirport.Text);
    cmd.Parameters.AddWithValue("@DomesticAirportNearest", DomesticAirport.Text);
    cmd.Parameters.AddWithValue("@Function", function.Text);
    cmd.Parameters.AddWithValue("@Secondfunction", secondFun.Text);
    cmd.Parameters.AddWithValue("@Level", Level.Text);
    cmd.Parameters.AddWithValue("@Zone", Zone.Text);
    cmd.Parameters.AddWithValue("@Examinationdate", examDate.Text);
    cmd.Parameters.AddWithValue("@Examinationlocation", examLocation.Text);
    cmd.Parameters.AddWithValue("@Examiner1", examiner1.Text);
    cmd.Parameters.AddWithValue("@Examiner2", examiner2.Text);

    cmd.ExecuteNonQuery();
    conn.Close();

    firstname.Text = "";
    middlename.Text = "";
    lastname.Text = "";
    street.Text = "";
    street2.Text = "";
    city.Text = "";
    zip.Text = "";
    homePhone.Text = "";
    mobilePhone.Text = "";
    alterMobile.Text = "";
    skypeContact.Text = "";
    facebook.Text = "";
    InternationalAirport.Text = "";
    examDate.Text = "";
    examiner1.Text = "";
    examiner2.Text = "";

    displayData();
}

我试图将这些单词一起写,因为我认为它们引起了错误。

DomesticAirportNearest, --> Function, Secondfunction,

函数是保留关键字。

如果您使用的是MySql,则需要使用反勾来转义

DomesticAirportNearest, `Function`, Secondfunction,

但由于异常显示为System.Data.SqlClient.SqlException,因此我假设其为Sql Server。 如果是它的Sql服务器,则需要使用[]

DomesticAirportNearest, [Function], Secondfunction,

尝试在此行中更改单词functioncmd.Parameters.AddWithValue("@Function", function.Text);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM