J'utilise python et spécifiquement MySQLdb pour remplir une base de données, même si un code qui travaillait jusqu'à récemment est en train de vomir une erreur après serveurs déplacement au travail:erreur MySQLdb lors de l'utilisation cursor.execute()
Le code est :
cursor.execute("""SELECT Entry, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P FROM evaluation""")
result = cursor.fetchall()
for record in result:
codeno=int(str(record[15]))
status, progress, reprocessing = RepStatus_new.get_status(code=codeno, proj_tag=str(record[16]),cache_dir="cache", prod_type="g1")
cursor.execute("""UPDATE evaluation SET M=%s WHERE A LIKE %s""",(progress, int(str(record[15]))))
et l'erreur qui se pose est:
File "mySQLtest.py", line 165, in <module>
cursor.execute("""UPDATE evaluation SET M=%s WHERE A LIKE %s""",(progress, int(str(record[15]))))
File "/usr/lib64/python2.5/site-packages/MySQLdb/cursors.py", line 166, in execute
self.errorhandler(self, exc, value)
File "/usr/lib64/python2.5/site-packages/MySQLdb/connections.py", line 35, in defaulterrorhandler
raise errorclass, errorvalue
_mysql_exceptions.OperationalError: (1205, 'Lock wait timeout exceeded; try restarting transaction')
Je ne sais pas où cela va mal, comme je le disais ce code a travaillé jusqu'à récemment. Si quelqu'un a des suggestions, il serait très apprécié! (Je l'ai remplacé les variables avec des lettres pour aider la capacité de lecture!)
La base de données est correctement raccordé, que je peux sortir le « résultat » après cursor.fetchall()
Merci à l'avance