Bonjour,

A partir d'une appli en C#, j'essaye de me connecter à une base MySQL. J'utilise le connector fourni par MySQL à cette adresse http://dev.mysql.com/downloads/connector/net/5.0.html

Bonne nouvelle, j'arrive à me connecter à la base. J'arrive à executer une commande du style UPDATE, j'arrive a afficher les lignes d'une table.

Mais je n'arrive pas à combiner un select et un update. Je m'explique : je souhaite lister les lignes d'une table ou ... et pour chaque enregistrement, je mets à jour un champ. Exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
// Connexion
MySqlConnection myConnection1 = new MySqlConnection(myConnectionString);
myConnection1.Open();
 
// Récupération des champs d'une table
mySelectQuery = "SELECT elt_ref FROM table WHERE elt_etat=2";
MySqlCommand myCommand_select = new MySqlCommand(mySelectQuery, myConnection1);
MySqlDataReader myReader;
myReader = myCommand_select.ExecuteReader();
 
 
//Pour chaque ligne de mon reader
while (myReader.Read())
{
  // calcul de maVar
  maVar=...;
 
  // Nouvelle connexion
  MySqlConnection myConnection2 = new MySqlConnection(myConnectionString);
  myConnection2.Open();
 
  // update
  myCommand_update = new MySqlCommand("UPDATE table SET elt_truc='" + maVar + "' WHERE elt_ref='" + myReader.GetString("elt_ref") + "'", myConnection2);
  myCommand_update.Connection = myConnection2;
  myCommand_update.ExecuteNonQuery();
 
  // Déconnexion
  myCommand_update.Connection.Close();
  myConnection2.Close();
}
 
// Déconnexion
myReader.Close();
myCommand_select.Connection.Close();
Le problème vient de la ligne
myCommand_update.ExecuteNonQuery();
qui ne veut pas s'exécuter.

Pourriez-vous m'aider?
Peut-être le connecteur MySQL n'est pas bon?


Merci pour vos infos