import json from utilities.database.sqlite import SQLite with open("config.json", 'r') as config_file: config_json = json.loads(config_file.read()) my_db = SQLite(config_json["database"]["name"]) my_db.query(""" CREATE TABLE IF NOT EXISTS media ( media_id INTEGER PRIMARY KEY AUTOINCREMENT, media_name TEXT NOT NULL, media_uri TEXT, media_preparing INTEGER DEFAULT 0 CHECK(media_preparing IN (0, 1)), media_active INTEGER DEFAULT 0 CHECK(media_active IN (0, 1)), media_default INTEGER DEFAULT 0 CHECK(media_default IN (0, 1)) ) """) my_db.query(""" CREATE TABLE IF NOT EXISTS media_preparation ( media_preparation_id INTEGER PRIMARY KEY AUTOINCREMENT, media_id INTEGER NOT NULL, media_preparation_started INTEGER DEFAULT 0 CHECK(media_preparation_started IN (0, 1)), media_preparation_progress INTEGER, media_preparation_finished INTEGER DEFAULT 0 CHECK(media_preparation_finished IN (0, 1)), media_preparation_time_between_components INTEGER ) """) my_db.query(""" CREATE TABLE IF NOT EXISTS media_component ( media_component_id INTEGER PRIMARY KEY AUTOINCREMENT, media_id INTEGER NOT NULL, media_component_uri NOT NULL, media_component_index INTEGER CHECK(media_component_index >= 1), media_component_deleted INTEGER DEFAULT 0 CHECK(media_component_deleted IN (0, 1)) ) """) my_db.query(""" CREATE TABLE IF NOT EXISTS media_playback_option ( media_playback_option_id INTEGER PRIMARY KEY AUTOINCREMENT, media_playback_option TEXT NOT NULL, media_playback_option_weight NOT NULL CHECK(media_playback_option_weight >= 1) ) """) my_db.close()