From 2a08622d7977c2553766ecce5ce741704571b3b6 Mon Sep 17 00:00:00 2001 From: cartoonnerie Date: Sat, 2 Sep 2023 17:27:21 +0200 Subject: [PATCH] refactor: multiple db migrations --- config.py | 2 +- db/{dumpFile => migrations/0001_init} | 0 db/migrations/0002_imdb | 2 ++ scripts/ccInterface.py | 13 ++++++++----- 4 files changed, 11 insertions(+), 6 deletions(-) rename db/{dumpFile => migrations/0001_init} (100%) create mode 100644 db/migrations/0002_imdb diff --git a/config.py b/config.py index 0d5391f..4a38360 100644 --- a/config.py +++ b/config.py @@ -4,4 +4,4 @@ prices = { } db_path = '../db/baseFilms.db' -dump_path = '../db/dumpFile' +migrations_db = '../db/migrations' diff --git a/db/dumpFile b/db/migrations/0001_init similarity index 100% rename from db/dumpFile rename to db/migrations/0001_init diff --git a/db/migrations/0002_imdb b/db/migrations/0002_imdb new file mode 100644 index 0000000..d161f6f --- /dev/null +++ b/db/migrations/0002_imdb @@ -0,0 +1,2 @@ +ALTER TABLE films +ADD idImdb TEXT diff --git a/scripts/ccInterface.py b/scripts/ccInterface.py index e71a671..173c83a 100644 --- a/scripts/ccInterface.py +++ b/scripts/ccInterface.py @@ -5,6 +5,7 @@ Created on Sun Mar 25 18:20:49 2018 @author: alice """ +import os # Enhancements : # * utiliser un dictionnaire pour les menus, afin d'avoir un menu de fond (quitter, corriger etc) @@ -13,7 +14,7 @@ Created on Sun Mar 25 18:20:49 2018 from genCom import GenerateurComm from cineclubBlogSQ import filmSQ as f -from config import dump_path, db_path +from config import migrations_db, db_path import sqlite3 DEBUG = True @@ -56,13 +57,15 @@ class FilmInterface(): print("\nLe film couramment chargé est", self.filmCharge.nom, "\n") def initBDD(self): - fichier = open(dump_path, "r") - instruction = fichier.read() - fichier.close() + instructions = [] + for filename in os.listdir(migrations_db): + with open(os.path.join(migrations_db, filename), 'r') as fichier: + instructions.append(fichier.read()) conn = sqlite3.connect(db_path) c = conn.cursor() - c.executescript(instruction) + for instruction in instructions: + c.executescript(instruction) conn.commit() conn.close()