import json import sqlite3 with open("data.json", encoding="utf-8") as f: data = json.load(f) # alustetaan tietokantayhteys ja -kursori con = sqlite3.connect("tietokanta.db") cur = con.cursor() # luodaan ensimmäinen taulu tietokantaan cur.execute("CREATE TABLE ateria(id integer primary key, paiva, ruoka)") # käydään data läpi ja laitetaan kiinnostava sisältö tietokantaan for paiva in data["MenusForDays"]: pvm = paiva['Date'] for ruoka in paiva["SetMenus"]: # ei laiteta tyhjiä rivejä mukaan if len(ruoka['Components']) != 0: # yhdistetään ruokavaihtoehdon eri komponentit ruokastring = ' '.join(ruoka['Components']) # EI näin, SQL injection: #stmt = f"INSERT INTO ateria (paiva, ruoka) VALUES({pvm}, {ruokastring})" #cur.execute(stmt) cur.execute("INSERT INTO ateria (paiva, ruoka) VALUES(?, ?)", (pvm, ruokastring)) con.commit() # luodaan myös tykkäyksille oma taulu cur.execute("CREATE TABLE tykkaykset(id integer primary key, ruokaid integer)") con.commit() con.close()