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

У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис рядом с «paul@yahoo.com ')» (вводимое мной электронное письмо) в строке 1

int MobileNo;
string Mobile = txtMobile.Text;
int.TryParse(Mobile, out MobileNo);
MySqlConnection connection = new MySqlConnection(MyConnectionString);
MySqlCommand cmd;
connection.Open();
try 
{
    cmd = connection.CreateCommand();
    cmd.CommandText = "INSERT INTO phonebook(Id,Name,MobileNo)VALUES(@Id,@Name,@MobileNo)";
    cmd.Parameters.AddWithValue("@Id", int.Parse(txtId.Text));
    cmd.Parameters.AddWithValue("@Name", txtName.Text);
    cmd.Parameters.AddWithValue("@MobileNo", Mobile);
    cmd.ExecuteNonQuery();
    cmd.Parameters.Clear();
    cmd.CommandText = "INSERT INTO email(Id,email)VALUES( ,@email)";
    cmd.Parameters.AddWithValue("@Id", int.Parse(txtId.Text));
    cmd.Parameters.AddWithValue("@email", txtEmail1.Text);
    cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message);
}
finally
{
    if (connection.State == ConnectionState.Open)
    {
        connection.Close();
        LoadData();
    }
}

the image is my table

0
davz_11 6 Фев 2014 в 21:46
Вы не включаете Id во второй запрос .. Пожалуйста, укажите его, а затем проверьте.
 – 
Ashish Charan
6 Фев 2014 в 21:54

1 ответ

Лучший ответ

+ Изменить

"ВСТАВИТЬ В email (Id, email) ЗНАЧЕНИЯ (, @ email)";

Чтобы

"ВСТАВИТЬ В email (Id, email) ЗНАЧЕНИЯ (@Id, @ email)";

Вы указываете, что вставляете данные в два столбца, но предоставляете только одно значение.

1
Derek W 6 Фев 2014 в 21:56