diff --git a/README.md b/README.md index 2c4cf90..7e135de 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ für alle Zeilen im Tabellenblatt: ### Output eines Durchlaufs mit den gegebenen Testdaten ``` -$ python3 merge_sample.py +~/git/example_merge_bug4599$ python3 merge_sample.py Importiere aus excel_file_1.xlsx - Tabelle1 Mtknr: 1 Note: 1.0 hinzufügen @@ -60,14 +60,35 @@ Mtknr: 3 Note: 1.0 hinzufügen Mtknr: 4 Note: 3.0 hinzufügen Mtknr: 5 Note: 2.3 hinzufügen Fehlender oder ungültiger Notenwert für Mtknr 6 +--- +Datenbankstand nach Import: +pruefung_id mtknr note +6 1 1 +6 2 1.3 +6 3 1 +6 4 3 +6 5 2.3 +--- Importiere aus excel_file_2.xlsx - Tabelle1 Wollen Sie die Note zu 1 auf 1.3 aktualisieren? (j/n) -n -unverändert +j +angepasst Mtknr: 7 Note: 1.3 hinzufügen Mtknr: 8 Note: 1.0 hinzufügen Mtknr: 9 Note: 3.0 hinzufügen Note zu 2 wird nicht geändert, Zeile leer oder ungültig Note zu 3 wird nicht geändert, Zeile leer oder ungültig +--- +Datenbankstand nach Import: + +pruefung_id mtknr note +6 1 1.3 +6 2 1.3 +6 3 1 +6 4 3 +6 5 2.3 +6 7 1.3 +6 8 1 +6 9 3 ``` \ No newline at end of file diff --git a/database.db b/database.db index 97c8cdd..e3681cb 100644 Binary files a/database.db and b/database.db differ diff --git a/merge_sample.py b/merge_sample.py index 79f8adf..cb4a27a 100644 --- a/merge_sample.py +++ b/merge_sample.py @@ -19,7 +19,7 @@ connection = sqlite3.connect(SQLITE_FILE) # Hier als Konstante, da in der Praxis wahrscheinlich aus Kontext # in Webanwendung abgeleitet -PRUEFUNG_ID = 5 +PRUEFUNG_ID = 6 def read_file(filename): # alle Validierungsschritte zugunsten eines übersichtlichen Beispiels eingespart @@ -35,6 +35,17 @@ def read_file(filename): return data +def print_result(con, pruefung_id): + sql = "select * from pruefungsergebnis where pruefung_id = ?" + cur = con.cursor() + cur.execute(sql, (pruefung_id, )) + result = cur.fetchall() + print("Datenbankstand nach Import: \n") + print("pruefung_id\tmtknr\tnote") + for entry in result: + print(f"{entry[0]}\t\t{entry[1]}\t{entry[2]}") + + def is_already_set(con, pruefung_id, mtknr): sql = "select count(*) as anzahl from pruefungsergebnis where pruefung_id = ? and mtknr = ?" cur = con.cursor() @@ -93,5 +104,12 @@ def merge_data(pruefung_id, new_data): f1 = read_file("excel_file_1.xlsx") merge_data(PRUEFUNG_ID, f1) +print("---") +print_result(connection, PRUEFUNG_ID) +print("---") + f2 = read_file("excel_file_2.xlsx") merge_data(PRUEFUNG_ID, f2) + +print("---") +print_result(connection, PRUEFUNG_ID) \ No newline at end of file