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 37 38
|
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()
queries = []
delimiter = ';'
query = ''
with open(sql_file, 'r') as f:
for line in f:
line = line.strip()
if line.startswith('DELIMITER'):
delimiter = line[10:]
else:
query += line + '\n'
if line.endswith(delimiter):
# Get rid of the delimiter, remove any blank lines and add this query to our list
queries.append(query.strip().strip(delimiter))
query = ''
for query in queries:
if not query.strip():
continue
try:
# print("\n\n [DEBUG] Executing SQL statement:\n%s" % (statement))
# print (statement)
#print ("Query: " +query)
cursor.execute(query)
except:
print
"[MYSQLERROR] Erreur lors de chargement de la base ****"
cursor.close()
cnx.commit()
cnx.close() |
Partager