Bonjour,
je repasse vous voir pour un nouveau probleme :bug:
J'ai une form1 qui contient mon code select:
Vous l'aurez compris, jme connect a ma base de donnée pour insérer dans mon datagridview1 les données. Ca fonctionne niquel.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 public Boolean selectClient() { try //Procédure de test { //Création de la commande string selectCommand = "SELECT * FROM contact;"; maSelectCommand.SelectCommand = new MySqlCommand(selectCommand, myConnectionRessource); maSelectCommand.Fill(ds); dataGridView1.DataSource = ds.Tables[0]; dataGridView1.Refresh(); infosActionLabel.Text = "Liste des contacts chargé avec succès"; //Informations a l'utilisateur du succès return true; } catch (MySqlException myEx) //Erreur { infosActionLabel.Text = "Error " + myEx.GetType() + " : Impossible de lister les contacts"; //Information à l'utilisateur de l'erreur return false; } }
J'ai maintenant une form 2 qui contient la commande insert de MySQL:
.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 public Boolean insertContact() { string sName = txtAddName.Text; string sFirstName = txtAddFirstName.Text; string sAdress = txtAddAdress.Text; string sSpa = txtAddNpa.Text; string sCity = txtAddCity.Text; string sTelPriv = txtAddTelPriv.Text; string sTelProf = txtAddTelProf.Text; string sEmail = txtAddEmail.Text; MySqlCommand insertDonnees = new MySqlCommand(); insertDonnees.CommandText = "INSERT INTO contact(id, name, firstName, adress, npa, ville, tel_private, tel_prof, email) VALUES('', '" + sName + "', '" + sFirstName + "', '" + sAdress + "', '" + sSpa + "', '" + sCity + "', '" + sTelPriv + "', '" + sTelProf + "', '" + sEmail + "');"; try { insertDonnees.Connection = myConnectionRessource; MySqlCommand insertExecuter = new MySqlCommand(); MySqlDataReader executer = insertDonnees.ExecuteReader(); MessageBox.Show("Donnée ajouté avec succès à la table."); executer.Close(); this.Close(); fenetrePrincipale.selectClient(); return true; } catch (MySqlException myEx) { infoConnection.Text = "Error: " + myEx.GetType() + " Impossible d'ajouté les données"; return false; } }
La encore, ca fonctionne, mes données ce rajoute.
Le soucis réside que la liste s'affiche deja au _LOAD_ du programme. et donc mon datagridview n'est pas vide.
Comme une fois que j'ai insert, je vais chercher le code select de la form1,
mon datagridview va insérer a nouveau la liste sans supprimer l'enseigne.
Ce qui fais que j'aurai 2x chaque donnée de ma database +1x le dernier que je viens d'insérer.
Je veux donc éviter les doublons.
J'ai procédé avec un DataGridView1.Rows.Clear();
mais il me dit "Impossible d'effacer cette liste."
Comment puis-je donc faire?
Merci de l'attention porté à mon message
Kiwi