Bonjour,
j'ai une appli C# qui se connecte à une bdd MySQL.
Dans mon appli, j'ai une liste qui affiche des salles de conférence. Quand je clique sur une salle, une autre liste se charge avec les disponibilités de cette salle (par exemple lundi 8h00, lundi 14h00, lundi 16h00, mardi 8h00...).
Je clique alors sur la disponibilité qui me convient et je clique sur "Réserver". TOUT FONCTIONNE!!!!
Seulement mes utilisateurs n'utilisent pas l'appli comme je le pensais. En fait, ils sélectionnent la salle, la liste des dispo est donc affichée. Puis ils restent sur cette fenêtre quelques secondes ou minutes, puis seulement clique sur "Réserver". Seulement entre temps une autre utilisateur a peut être réservé la salle et cette dispo. Je mets à jour 2 tables pour la réservation.
J'ai voulu utilisé SELECT FOR UPDATE mais j'ai pas l'impression que ce soit fait pour moi. J'ai fait une procédure pour la mise à jour des 2 tables, car parfois, je mettais à jour une table et pas l'autre car ça plantait au milieu. Mais ça ne règle pas ce problème d'accès concurrent. Que me conseillez vous? J'imaginais vérifier sur la dispo est toujours dispo avant de mettre à jour.
Par avance, merci.
Partager