Bonjour,
apres moulte recherche, je me decide à poster. J'ai une application qui réalise un SELECT sur une table, puis retourne certaines lignes. Sur ces lignes, je fais un UPDATE puis commit pour qu'elles ne soient plus retournée pas le SELECT. Une fois que le commit à lieu, je regarde sur phpmyadmin et je remarque que le commit à bien au lieu. Mais dans mon application, le commit est effectif que lorsque je la quitte et la relance. Alors la, le commit a effectif. J'ai pratiquement tout essayé. Passer par des MySqlTransaction, passer pas des simples MySqlCommand, ou de me déconnecter/connecter à la base de donnée. Au début je pensais que cela était du au fait que j'utilisais un thread pour effectuer les commandes SQL, mais j'ai essayé sans thread, cela ne change rien. Dans tous les cas le commit a bien lieu car je vois le changement dans phpmyadmin, mais dans mon application, le changement a lieu que lorsque je la relance.

Voila le SELECT :

string MySQLCmd = "SELECT * FROM `table` WHERE `maj`=0 AND`paye`=1;";
MyAdapter.SelectCommand = new MySqlCommand(MySQLCmd, myConnection);
MyAdapter.Fill(dataSet1);

Voila l'UPDATE(la dernière version que j'ai essayé...) :

string MySQLCmd = "UPDATE table SET `maj` = 1 WHERE `id` =" + m_nomfichier + "; COMMIT;";
myConnection.BeginTransaction();
MySqlCommand SelectCommand = new MySqlCommand(MySQLCmd, myConnection);
int ret = SelectCommand.ExecuteNonQuery();

Merci d'avance pour votre aide

PS : il m'a semblé que le mieu était de poster dans cette rubrique