Mysql
 sql >> Base de données >  >> RDS >> Mysql

Insertion de plusieurs objets de dictionnaire dans une base de données MySQL à l'aide de python et MySQLdb

Il n'est pas nécessaire d'utiliser un générateur pour boucler sur mydata . Passez simplement mydata directement :

cur.executemany(sql, mydata)

L'adaptateur de base de données bouclera sur mydata pour vous et une expression de générateur insère seulement une boucle supplémentaire inutile.

Si vous ne recevez aucun message d'erreur mais qu'il n'y a aucun changement non plus, vérifiez ce qui suit :

  • Assurez-vous de valider la transaction ; exécutez con.commit() après le .executemany() appeler.

  • Vérification triple que mydata n'est pas vide.

L'adaptateur de base de données gérera correctement les valeurs flottantes pour vous ; si une colonne est marquée comme FLOAT NOT NULL et vous transmettez une valeur flottante Python pour cette colonne, Things Just Work. C'est à cela que servent les paramètres SQL, gérer correctement la citation de différents types de données.