1

i use this code to update data that are in the textboxes... this code is in the update button and once i made the changes and clicked the button the error message appears

        try
        {
            MySqlConnection connection = new MySqlConnection(MyConnectionString);
            MySqlCommand cmd;
            connection.Open();
            cmd = connection.CreateCommand();
            cmd.CommandText = "UPDATE student_info SET SEM = @SEM, STUDENT_NO = @STUDENT_NO, LASTNAME = @LASTNAME" +
            ", FIRSTNAME = @FIRSTNAME, MIDDLENAME = @MIDDLENAME, CITY = @CITY, STREET = @STREET, GENDER = @GENDER" +
            ", COURSE = @COURSE, YEAR = @YEAR, SECTION = @SECTION, BIRTHDAY = @BIRTHDAY  Where STUDENT_NO = @STUDENT_NO";

            cmd.Parameters.AddWithValue("@SEM", sem_combo.Text);
            cmd.Parameters.AddWithValue("@STUDENT_NO", studentNo_txt.Text);
            cmd.Parameters.AddWithValue("@LASTNAME", lname_txt.Text);
            cmd.Parameters.AddWithValue("@FIRSTNAME", fname_txt.Text);
            cmd.Parameters.AddWithValue("@MIDDLENAME", mname_txt.Text);
            cmd.Parameters.AddWithValue("@CITY", address_txt.Text);
            cmd.Parameters.AddWithValue("@STREET", street_txt.Text);
            cmd.Parameters.AddWithValue("@GENDER", gender_combo.Text);
            cmd.Parameters.AddWithValue("@COURSE", program_combo.Text);
            cmd.Parameters.AddWithValue("@YEAR", yr_combo.Text);
            cmd.Parameters.AddWithValue("@SECTION", section_combo.Text);
            cmd.Parameters.AddWithValue("@BIRTHDAY", bday.Text);
            cmd.ExecuteNonQuery();
            cmd.Parameters.Clear();

            cmd.CommandText = "UPDATE contacts SET EMAIL = @EMAIL, CELL_NO = @CELL_NO Where STUDENT_NO = @STUDENT_NO";

            cmd.Parameters.AddWithValue("@EMAIL", email_txt.Text);
            cmd.Parameters.AddWithValue("@CELL_NO", contact_txt.Text);
            cmd.ExecuteNonQuery();
            cmd.Parameters.Clear();
        }
        catch(Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
davz_11
  • 135
  • 2
  • 6
  • 14

1 Answers1

2

Check in This Line

            cmd.Parameters.Clear();

            cmd.CommandText = "UPDATE contacts SET EMAIL = @EMAIL,
            CELL_NO = @CELL_NO Where STUDENT_NO = @STUDENT_NO";

            cmd.Parameters.AddWithValue("@EMAIL", email_txt.Text);
            cmd.Parameters.AddWithValue("@CELL_NO", contact_txt.Text);
            cmd.ExecuteNonQuery();
            cmd.Parameters.Clear();

Change To

            cmd.Parameters.Clear();
            cmd.CommandText = "UPDATE contacts SET EMAIL = @EMAIL,
            CELL_NO = @CELL_NO Where STUDENT_NO = @STUDENT_NO";

            cmd.Parameters.AddWithValue("@EMAIL", email_txt.Text);
            cmd.Parameters.AddWithValue("@CELL_NO", contact_txt.Text);
            cmd.Parameters.AddWithValue("@STUDENT_NOL",studentNo_txt.Text);
            cmd.ExecuteNonQuery();
            cmd.Parameters.Clear();

you are clear the parameters, but after that use @STUDENT_NO parameter. This parameter is not declare any where after clear ther parameters

Sathish
  • 4,419
  • 4
  • 30
  • 59
  • Thanks, helped me find my error! It should have been obvious, but when you're panicking, it's easy to overlook small stuff. – Sean Kendle Feb 18 '15 at 17:25