From a8020e8dbe47f633ee87d15daaa4c65e80c95927 Mon Sep 17 00:00:00 2001 From: engertda83421 Date: Thu, 18 May 2023 12:24:13 +0200 Subject: [PATCH] Create SQLite Database --- .../BackEnd/Database/EinsZweiOderDrei.db | Bin 0 -> 12288 bytes src_folder/BackEnd/Database/database.py | 89 ++++++++++++++++++ src_folder/BackEnd/Database/question_pool.txt | 21 +++++ 3 files changed, 110 insertions(+) create mode 100644 src_folder/BackEnd/Database/EinsZweiOderDrei.db create mode 100644 src_folder/BackEnd/Database/database.py create mode 100644 src_folder/BackEnd/Database/question_pool.txt diff --git a/src_folder/BackEnd/Database/EinsZweiOderDrei.db b/src_folder/BackEnd/Database/EinsZweiOderDrei.db new file mode 100644 index 0000000000000000000000000000000000000000..572db1d4ac81409382f8ed6e5257dc11e42407f5 GIT binary patch literal 12288 zcmeI1&u<&Y6~{@fva%%puwx5?;RqZ>aUE50Y&wnNA}uzQP5%%nLNWz2He#qF@^N>- z-5GjjR;&pGfzo4p>ajrKLvk-r1U~sj1iklf$f?Hy1)5XxW+~FL(o_}-^bpJfBq_9#`8WV`(FHrc#)ccXOg0jZQ9yhBP{^+1ZQ z>1wA)W=xACrPq?%jugIkPvRgXhF(eKb$izL4@ zGD__f$4PUpKV^7k@pEoElgfXUU(cs#W;cIKQ~ipo;85A6PTsFzgQd zkC+;b0wK9nqc_4!UPUwmMZ-ScqCjHj&5qKd-5!dyh&5KCC9OlrPfoiJ zF5=ZdlmW28)1ldA**5Q}GMU3V;G1nA6nNVrA`MBoAA+pH9z)8K#!77hj!bScP!Jw2 zXL*-ixP0ZxeZff&BBC^nA{+s^--c-LW!Qpbgbl$dsWL^qP1Z!h;y&X|G@I;EPHqc7 zr~03NBg}y5Js^k^=1&U zmaYgcX^WIvz-bJ!!NTwfL5lnbRgbc6dGW(bmyCLh3fF0bE^Sb)3COk?f_t~a!Si4j z6$s@JI$9=@;-tZlDMCOO(5TyvC_033cqs#!seNauaK2z>g5L6h>>}i5FyvN6v1-CN z0o|iy55XEYC4wUTSdy}Afp`5XsY53*}GgLL8RB3A{ZnIj*+nhE7Qf9m-aPdpN?9~Tf2(n4zP;841 z6Lk=An51CJZLBP>EH@Bzj}F&FMMM!ALs6rKf2k|NP>^ELtBRN@Qj(FR$bG;Za2PefMP8$t z?SXpH?2hAZEu1eD9>(K|AU(4OqC}-8x6!YO9=wqt?kc3#x`}Foh|1155ll?&XR)UO z4tLO(Bw)Vdt(m&GZREUT3d6@xd@Bi)X$5E9cXL z8&4j%I`ebqLHfu6>PMncr{8sG`qe{AdDA@U`IW*$IpUNPTt61$$$m7s?<5@#PwOX+ z(qxvM#?h(%=lIL)JI None: + self.file_name = file_name + try: + self.connection = sqlite3.connect(database=self.file_name) + print(f'Successfully connected to SQLite (Version: ' + sqlite3.version + ')..\n') + except Error as err: + print(err) + self.cursor = self.connection.cursor() + + def close_connection(self): + try: + self.cursor.close() + print("Close connection to SQLite was successfully.") + except Error as err: + print(err) + + def create_table(self): + table_config = "CREATE TABLE IF NOT EXISTS Questions" \ + "(QuestionNr TEXT PRIMARY KEY," \ + " Answeroption_1 \nTEXT," \ + " Answeroption_2 TEXT," \ + " Answeroption_3 TEXT," \ + " Correct_answeroption TEXT)" + self.cursor.execute(table_config) + print("Successfully create tables.. ") + + + def insert_table(self, questions: list): + self.cursor.executemany("INSERT OR IGNORE INTO Questions VALUES (?, ?, ?, ?, ?)", questions) + print("Successfully insert data into table.") + + def num_rows(self): + self.cursor.execute("SELECT COUNT(*) FROM Questions") + return self.cursor.fetchone()[0] + + + def delete_data(self, table_name): + self.cursor.execute(f"DELETE FROM {table_name}") + + + def read_question_data(self, file_name: str): + try: + data = pd.read_csv(file_name, delimiter=';') + except Error as err: + print('File could not be read..') + print(err) + return data + + ## ToDO: get question, return type(dict) + def get_questions(): + pass + + +if __name__ == "__main__": + + database = QuestionDataBase('Project/BackEnd/Database/EinsZweiOderDrei.db') + insert_table = database.insert_table(questions) + + database.commit() + database.close_connection() + diff --git a/src_folder/BackEnd/Database/question_pool.txt b/src_folder/BackEnd/Database/question_pool.txt new file mode 100644 index 0000000..1d883a4 --- /dev/null +++ b/src_folder/BackEnd/Database/question_pool.txt @@ -0,0 +1,21 @@ +Question, Answer1, Answer2, Answer3, Right Answer +('Wie heißt der längst Fluss auf der Welt?', 'Amazonas', 'Nil', 'Jangtsekiang', 'Nil'), +('Aus welcher englischen Stadt stammt die Musikgruppe die Beatles?', 'London', 'Sheffield', 'Liverpool', 'Liverpool'), +('Zu welchem Land gehört Grönland?', 'Norwegen', 'Island', 'Dänemark', 'Dänemark'), +('Wie heißen die ursprünglichen Bewohner Australiens?', 'Aborigines', 'Eingeborene', 'Australian Natives', 'Aborigines'), +('Mit welchem Korn verglich Jesus das Reich Gottes?', 'Senfkorn', 'Weizenkorn', 'Haferkorn', 'Senfkorn'), +('Wie lange können Kaiserpinguine tauchen?', '5min', '10min', '20min', '20min'), +('Wer war der Kommandant der Apollo 11?', 'Louis Armstrong', 'Neil Armstrong', 'Lance Armstrong', 'Neil Armstrong'), +('Wie heißt die größte Stadt der Welt (nach Einwohnern)?', 'São Paulo', 'Tokio', 'Seoul', 'Tokio',), +('In welchem Land liegt Helsinki?', 'Finnland', 'Norwegen', 'Schweden', 'Finnland'), +('Wie viele Bundesländer hat Deutschland?', '16', '17', '20', '16'), +('Wie heißt der höchste Berg Europas?', 'Zugspitze', 'Matterhorn', 'Montblanc', 'Montblanc'), +('Wie lange braucht das Licht in etwa von der Sonne zur Erde?', '80 Sekunden', '8 Minuten', '7 Tage', '8 Minuten'), +('Was hat James Watt erfunden?', 'Glühbirne', 'Elektrischen Widerstand', 'Dampfmaschine', 'Dampfmaschine'), +('Wie hieß der erste Deutsch Bundeskanzler?', 'Helmut Schmidt', 'Konrad Adenauer', 'Willy Brandt', 'Konrad Adenauer'), +('Von wem stammt das Gemälde der Mona Lisa?', 'Picasso', 'Vincent van Gogh', 'Leonardo da Vinci', 'Leonardo da Vinci'), +('Wie heißt der Erfinder der Jeanshose?', 'Tom Wrangler', 'Levi Strauss', 'Peter Diesel', 'Levi Strauss'), +('Welches Land gewann 2014 die Fußball Weltmeisterschaft?', 'Brasilien', 'Argentien', 'Deutschland', 'Deutschland'), +('Welcher ist der "rote Planet" unseres Sonnensystems?', 'Mars', 'Venus', 'Jupiter', 'Mars'), +('Was bezeichnet die chemische Formel \'NaCl\'?', 'Kochsalz', 'Wasser', 'Stickstoff'), +('Welche Form hat die Narbe auf Harry Potters Stirn?', 'Dreieck', 'Blitz', 'Kreuz', 'Blitz')