Maison > base de données > tutoriel mysql > Pourquoi le chargement de mes données CSV Python MySQL échoue-t-il malgré aucune erreur ?

Pourquoi le chargement de mes données CSV Python MySQL échoue-t-il malgré aucune erreur ?

Linda Hamilton
Libérer: 2024-11-27 20:34:13
original
906 Les gens l'ont consulté

Why is My Python MySQL CSV Data Load Failing Despite No Errors?

Dépannage du chargement de données CSV dans MySQL en Python

En essayant de charger des données CSV dans une table MySQL, on peut rencontrer la situation où le le code s'exécute sans erreur, mais la table cible reste vide. Pour résoudre ce problème, considérez les éléments suivants :

Problème :

import csv
import MySQLdb

mydb = MySQLdb.connect(host='localhost',
    user='root',
    passwd='',
    db='mydb')
cursor = mydb.cursor()

csv_data = csv.reader(file('students.csv'))
for row in csv_data:

    cursor.execute('INSERT INTO testcsv(names, \
          classes, mark )' \
          'VALUES("%s", "%s", "%s")', 
          row)
#close the connection to the database.
cursor.close()
print "Done"
Copier après la connexion

Solution :

Pour vous assurer que le les données sont insérées avec succès dans la table, il est nécessaire d'appeler la méthode mydb.commit(). Cette méthode valide les modifications dans la base de données. Le code corrigé avec la modification nécessaire est :

import csv
import MySQLdb

mydb = MySQLdb.connect(host='localhost',
    user='root',
    passwd='',
    db='mydb')
cursor = mydb.cursor()

csv_data = csv.reader(file('students.csv'))
for row in csv_data:

    cursor.execute('INSERT INTO testcsv(names, \
          classes, mark )' \
          'VALUES("%s", "%s", "%s")', 
          row)
# Commit the data to the database.
mydb.commit()
#close the connection to the database.
cursor.close()
print "Done"
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal