Maison  >  Article  >  base de données  >  Pourquoi mes mises à jour MySQL ne persistent-elles pas dans mon script Python ?

Pourquoi mes mises à jour MySQL ne persistent-elles pas dans mon script Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-03 12:52:02212parcourir

Why Are My MySQL Updates Not Persisting in My Python Script?

Dépannage de l'échec de la mise à jour MySQL avec Python

Dans votre script Python, vous avez rencontré un problème où les mises à jour ne sont pas conservées dans la base de données MySQL , malgré le script indiquant un nombre de lignes réussi. Pour résoudre ce problème, il est essentiel de comprendre la nature fondamentale d'une transaction de base de données.

Une transaction consiste en une série d'opérations qui doivent soit toutes s'exécuter, soit aucune. Dans Python MySQLdb, une transaction est initiée par la méthode execute() de l'objet curseur. Cependant, les modifications ne sont que temporaires et conservées dans le tampon jusqu'à ce qu'une méthode commit() soit appelée.

Dans votre cas, vous lancez une transaction avec l'instruction curb.execute(), mais les modifications ne sont pas validé en utilisant dbb.commit(). Cela laisse la base de données dans un état incohérent, entraînant des mises à jour inaperçues.

Pour garantir des mises à jour réussies de la base de données, insérez la ligne de code suivante après curb.execute() :

<code class="python">dbb.commit()</code>

Cela validez explicitement les modifications dans la base de données, en veillant à ce que les mises à jour soient conservées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn