//Update statement public bool Update(Fournisseur f, string nom, string ville, double tarif) { if (f != null) { using (MySqlConnection connection = new MySqlConnection(connectionString)) { connection.Open(); MySqlCommand cmd = new MySqlCommand("update_fournisseur", connection); // Indique que l'appel SQL sera effectué sur une Procédure Stockée. cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.AddWithValue("?in_id", f.getId()); cmd.Parameters.AddWithValue("?in_nom", nom); cmd.Parameters.AddWithValue("?in_ville", ville); if (-1 < tarif) { cmd.Parameters.AddWithValue("?in_tarif", tarif); } else { cmd.Parameters.AddWithValue("?in_tarif", null); } // Execute l'UPDATE et retourne un boolean indiquant si la modification a été appliquée. return(0 < cmd.ExecuteNonQuery()); } } return(false); }
// Supprime un fournisseur. // Cette méthode est idempotente (le résultat ne varie pas suite à une multitude d'appel), // elle ne retournera pas d'état. // // Notez : un fournisseur inexistant ne sera pas supprimé, la base de données SQL fera comme si. public void Delete(Fournisseur f) { if (f != null) { using (MySqlConnection connection = new MySqlConnection(connectionString)) { connection.Open(); //create command and assign the query and connection from the constructor MySqlCommand cmd = new MySqlCommand("delete_fournisseur", connection); // Indique que l'appel SQL sera effectué sur une Procédure Stockée. cmd.CommandType = System.Data.CommandType.StoredProcedure; // Passage du paramètre ID. cmd.Parameters.AddWithValue("?in_id", f.getId()); cmd.ExecuteNonQuery(); // retourne 1 si la ligne a été supprimée, sinon c'est que le fournisseur // n'existait pas. (cela ne pose aucun souci) } } }