Bonjour à tous
Je suis en train de développer une appli Python qui sera interfacée avec MySQL
Mon code Python commence donc par faire un "connect" sur la bdd et récupère l'identifiant de connection qu'il utilisera ensuite jusqu'à la fin.
Je viens de remarquer que si j'interfère avec ma bdd depuis l'extérieur (style en ligne de commande depuis mysql) alors que mon programme est déjà lancé, les modifs que j'y apporte depuis l'extérieur ne sont pas répercutées.
Exemple
1) je lance mon programme
2) je modifie une table depuis l'extérieur
3) dans mon programme je fais un "select * from la table" => les modif apportées en 2) n'apparaissent pas
Pour que les modif apparaissent, faut soit que je quitte mon programme et que j'y revienne, soit que je refasse un connect().
En revanche, si la modif est faite par le programme alors je n'ai pas de problème.
Est-ce quelqu'un a déjà remarqué ce fait ? Est-ce normal ? Je pense qu'il y a un phénomène de bufferisation dans mon programme dû au connect initial que je conserve tel quel mais j'aimerais en être sûr. Si c'est ça c'est pas trop grave, car mon programme n'est pas destiné à être interfacé depuis l'extérieur et si qqqun le fait il saura qu'il lui faut alors quitter le programme puis le relancer. Mais si c'est un bug de MySQLdb...
Merci à tous
Partager