2017-08-16 4 views
1

J'ai un script python qui boucle dans la table, et met à jour les champs de date en fonction de certains critères.pyodbc pour loop et commit()

Dois-je exécuter COMMIT après chaque UPDATE en boucle, ou puis-je simplement faire un COMMIT à la fin du script, après la boucle? partie du script question ci-dessous:

for row in rows: 
    WO = row[0] 
    PLINE = str(row[2])[5:8].strip() 
    PPD = row[10] 
    if PLINE == "IP": 
     c_IP += 1 
     cursor.execute("UPDATE KSKWorkOrder SET PlanProductionDate = ? WHERE WorkOrder = ?",PPDates[c2_IP - 1], WO) 
     if c_IP == IP_CAP: 
      c_IP = 0 
      c2_IP = c2_IP + 1 
    if PLINE == "EB": 
     c_JB += 1 
     cursor.execute("UPDATE KSKWorkOrder SET PlanProductionDate = ? WHERE WorkOrder = ?",PPDates[c2_JB - 1], WO) 
     if c_JB == JB_CAP: 
      c_JB = 0 
      c2_JB = c2_JB + 1 
    if PLINE == "DLF": 
     c_DLF += 1 
     cursor.execute("UPDATE KSKWorkOrder SET PlanProductionDate = ? WHERE WorkOrder = ?",PPDates[c2_DLF - 1], WO) 
     if c_DLF == DLF_CAP: 
      c_DLF = 0 
      c2_DLF = c2_DLF + 1  

Répondre

1

Vous devriez être en mesure d'effectuer un seul commit() après avoir quitté la boucle si tel est votre préférence.