синтаксическая ошибка не запрос c # - PullRequest
0 голосов
/ 13 мая 2018

для школы мне нужно сделать веб-приложение на c # и mysql. В приложении есть страница регистрации, но когда я нажимаю на кнопку, чтобы закончить, я получаю синтаксическую ошибку, которая говорит, что execute.nonquery является неправильным. Кто-нибудь может мне помочь?

Это код:

            MySqlConnection conn = new MySqlConnection(ConfigurationManager.ConnectionStrings["gpopdrachtConnectionString"].ConnectionString);

            string insertQ;
            insertQ = "Insert into tblWerknemer(Gebruikersnaam, Vnaam, Fnaam, Wachtwoord, Geboortedatum, Geboorteplaats, E-mailadres, Geslacht, Loon, gsmNummer, Nationaliteit, Gemeente, Postcode, StraatEnNr)";
            insertQ += "values(@gbr, @Vn, @Fn, @Ww, @GebD, @GebPl, @Email, @Geslacht, @Loon, @gsm, @Nat, @Gemeent, @Post, @Strtnr)";
            insertQ += "Insert into tbldiploma(school,NaamDiploma) Values(@school,@diploma)";
            insertQ += "Insert into tblpostcode(postcode,gemeente) Values(@Post,@Gemeent)";
            insertQ += "Insert into tblstatuut(omschrijving) Values(@omschrijving)";

            MySqlCommand cmd = new MySqlCommand();
            //= new MySqlCommand(insertQ, conn); 

            cmd.CommandText = insertQ;
            cmd.Connection = conn;
            cmd.Parameters.AddWithValue("@gbr", txtgbr.Text);
            cmd.Parameters.AddWithValue("@Vn", txtVnaam.Text);
            cmd.Parameters.AddWithValue("@Fn", txtfnaam.Text);
            cmd.Parameters.AddWithValue("@Ww", txtww.Text);
            cmd.Parameters.AddWithValue("@GebD", txtgdatum.Text);
            cmd.Parameters.AddWithValue("@GebPl", txtgplaats.Text);
            cmd.Parameters.AddWithValue("@Email", txtemail.Text);
            cmd.Parameters.AddWithValue("@Geslacht", checkgeslacht.SelectedItem.ToString());
            cmd.Parameters.AddWithValue("@diploma", txtdiploma.Text);
            cmd.Parameters.AddWithValue("@school", txtschool.Text);
            cmd.Parameters.AddWithValue("@Loon", txtloon.Text);
            cmd.Parameters.AddWithValue("@omschrijving", txtstatuut.Text);
            cmd.Parameters.AddWithValue("@gsm", txtgsm.Text);
            cmd.Parameters.AddWithValue("@Nat", txtnat.Text);
            cmd.Parameters.AddWithValue("@Gemeent", txtgemeent.Text);
            cmd.Parameters.AddWithValue("@Post", txtpost.Text);
            cmd.Parameters.AddWithValue("@Strtnr", txtstrt.Text);

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

и это ошибка:

MySql.Data.MySqlClient.MySqlException: «У вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы узнать правильный синтаксис для использования рядом с '-mailadres, Geslacht, Loon, gsmNummer, Nationaliteit, Gemeente, Postcode, Straat' в строке 1 '

1 Ответ

0 голосов
/ 13 мая 2018

У вас проблема с синтаксисом рядом с E-mailadres (как вы его написали), попробуйте изменить его на одно имя, например, emailaddres или email_adres. Тире (-) доставляет вам неприятности

...