2017-06-22 5 views
0

Je travaille sur un projet d'école qui extrait des données d'une feuille Excel et met les données dans une base de données. Après avoir exécuté le code ci-dessous et exécuté la commande SQL SELECT * FROM éléments, il renvoie "Empty set". Qu'est-ce que je fais mal? Merci pour l'aide à l'avance!Python/MySQL: La table ne se met pas à jour

import openpyxl 
import MySQLdb as mdb 

db = mdb.connect('localhost', 'root', 'TRM4611', 'practice') 
cur = db.cursor() 

wb_choice = input('What workbook would you like to use?\n--> ') 

wb = openpyxl.load_workbook(wb_choice + '.xlsx') 

all_sheets = wb.get_sheet_names() 

with db: 
    for sheet in all_sheets: 
     current_sheet = wb.get_sheet_by_name(sheet) 
     print ('\nCurrent Sheet: ' + current_sheet.title) 
     for i in range(current_sheet.max_column): 
      for cellObj in current_sheet.columns[i]: 
       if i == 0: 
        cur.execute("INSERT INTO items(Date) VALUES(%s)", (cellObj.value,)) 
       if i == 1: 
        cur.execute("INSERT INTO items(Fruit) VALUES(%s)", (cellObj.value,)) 
       if i == 2: 
        cur.execute("INSERT INTO items(Quantity) VALUES(%s)", (cellObj.value,)) 

       print (cellObj.coordinate, cellObj.value) 
      print ('--- END OF ROW ---') 
+0

essayer de db.commit de votre INSERT() après la cur.execute() –

Répondre

1

Il vous manque le commit, vous devez vous engager vos questions à la fin de

db.commit()