problème lors de chargement d'une base mysql
Bonjour à tous,
J'ai utilisé ce code python pour créer une base Mysql en utilisant un fichier sql comme fichier d'entrée.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
#utf8
import mysql.connector
import sys
import re
class CreateDatabase:
def exec_sql_file(self, user, password, port, host, sql_file):
cnx = mysql.connector.connect(user=user, password=password, port=port,
host=host)
print
"************ Chargement de la base En cours... *********************"
cursor = cnx.cursor()
statement = ""
for line in open(sql_file):
if re.match(r'--', line): # ignore sql comment lines
continue
if not re.search(r'[^-;]+;', line): # keep appending lines that don't end in ';'
statement = statement + line
else: # when you get a line ending in ';' then exec statement and reset for next statement
statement = statement + line
# print "\n\n[DEBUG] Executing SQL statement:\n%s" % (statement)
try:
cursor.execute(statement)
except :
print
"[MYSQLERROR] Erreur lors de chargement de la base ****"
statement = ""
cursor.close()
cnx.commit()
cnx.close()
if __name__=="__main__":
CDB=CreateDatabase()
CDB.exec_sql_file(r"root",r"xxx",r"3306",r"localhost",r"C:\Users\xxx\patch_creation_DB.sql") |
Le code tourne sans aucune exception mais je m'es rendu compte qu'il ne fait pas l'insertion de quelques données dans une des tables de la base.
Sachant que j'ai des contraintes techniques m'exigeant d'utiliser la version python 2.7 et seulement l'api Mysql.connector.
Avez-vous une idée sur les raisons de ce souci et éventuellement si vous avez des recommandations pour régler ce souci svp.
Merci beaucoup d'avance !