Dodanie rekordu do bazy MySql

0

Nie wiem dlaczego nie chce mi dodać wartości, wywala mi że nie mam połączenia

 connection.Open();
            if (connection.State == ConnectionState.Open)
            {
                MySqlCommand cmdDataBase = new MySqlCommand(constring);
                cmdDataBase.CommandText = "INSERT INTO klient(Imie, Nazwisko, Pesel, Adres, Telefon) VALUES (@Imie, @Nazwisko, @Pesel, @Adres, @Telefon)";
                cmdDataBase.Parameters.Add(new MySqlParameter("@Imie", cl.FirstName));
                cmdDataBase.Parameters.Add(new MySqlParameter("@Nazwisko", cl.SurrName));
                cmdDataBase.Parameters.Add(new MySqlParameter("@Pesel", cl.Pesel));
                cmdDataBase.Parameters.Add(new MySqlParameter("@Adres", cl.Addres));
                cmdDataBase.Parameters.Add(new MySqlParameter("@Telefon", cl.Phone));

                cmdDataBase.ExecuteNonQuery();
                connection.Close();
                MessageBox.Show("Dodałeś element", "Informacja", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
2

Witam,

A nie możesz zrobić tego z using?

using(var connection = new MySqlConnection("CONNECTIONSTRING"))
{
connection.Open();
using(var command = connection.CreateCommand())
{
command.CommandText = "TWOJ SQL";
command.Parameters.AddWithValue("@param", "value");
command.ExecuteNonQuerey();
}
}

Pozdrawiam,

mr-owl

0

connection to jedno połączenie.
new MysqlCommand(constring) tworzy sobie drugie (nie dałeś szerszego kodu)

można powiedzieć że nie wywodzą się ze współnego pnia, i jest jakiś konflikt.

1 użytkowników online, w tym zalogowanych: 0, gości: 1