Bonjour à tous,

j'ai une table utilisateur, avec user_name(char var), et user_valid(boolean)
j'ai une autre table qui contient des clés de validation

key_value(char var), key_valid(boolean)

J'aimerais mettre user_valid à true, et la clé à false si la clé est à true.

Donc j'ai fait

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
update users set user_valid = (select key_valid from key where key_value = 'b428f1e4c0e27f1f281c8a9c62099' and key_valid = true) where user_id = 19
Le problème c'est qu'il faut que je sache si l'utilisateur a été validé ou non. Or la requête principale renvoie toujours 1, en effet elle considère qu'elle a bien mis le champ à jour, même si le champ est passé de false à false.

Ce qui est normal. Mais j'aimerais trouver une solution. C'est dans un environnement concurrentiel.