Как исправить «Неверный синтаксис рядом с ключевым словом« Функция ».»в с # - PullRequest
0 голосов
/ 18 апреля 2019

Я пытаюсь настроить базу данных для работы с моим приложением.Но я получаю эту ошибку каждый раз, когда пытаюсь вставить данные в базу данных.

System.Data.SqlClient.SqlException

Сообщение = Неверный синтаксис рядом с ключевым словом «Функция».
Источник = .Net SqlClient Data Provider

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();
}

Я пытался написать эти слова вместе, потому что думал, что они вызывают ошибку.

Ответы [ 2 ]

2 голосов
/ 18 апреля 2019
DomesticAirportNearest, --> Function, Secondfunction,

функция является зарезервированным ключевым словом.

вам нужно избежать его, используя обратную галочку, если вы используете MySql

DomesticAirportNearest, `Function`, Secondfunction,

, но, поскольку исключение говорит System.Data.SqlClient.SqlException, поэтому я предполагаю, что егоSql Server.Если его Sql-сервер, вам нужно использовать []

DomesticAirportNearest, [Function], Secondfunction,

0 голосов
/ 18 апреля 2019

Попробуйте изменить слово function в этой строке: cmd.Parameters.AddWithValue("@Function", function.Text);

...