ANALYSE-8/models/database.py
2022-10-07 22:53:23 +02:00

73 lines
2.0 KiB
Python

from multiprocessing import connection
import sqlite3
from models.city import City
class Database:
connection: sqlite3.Connection = None
@staticmethod
def init():
# Open connection with database
con = sqlite3.connect("./database.db")
Database.connection = con
Database._init_log_table()
Database._init_user_table()
Database._init_city_table()
@staticmethod
def delete_tables():
cursor = Database.connection.cursor()
cursor.execute("DROP TABLE logs")
cursor.execute("DROP TABLE users")
cursor.execute("DROP TABLE cities")
cursor.close()
@staticmethod
def _init_log_table():
cursor = Database.connection.cursor()
q = cursor.execute("""
CREATE TABLE IF NOT EXISTS logs (
id INTEGER PRIMARY KEY AUTOINCREMENT,
username TEXT,
date TEXT,
time TEXT,
description TEXT,
additional_information TEXT,
suspicious BOOLEAN
)
""")
cursor.close()
@staticmethod
def _init_user_table():
cursor = Database.connection.cursor()
cursor.execute("""
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
username TEXT,
firstname TEXT,
lastname TEXT,
address TEXT,
zipcode TEXT,
city_id INTEGER,
email TEXT,
phone TEXT,
password TEXT,
role TEXT,
created TEXT
)
""")
cursor.close()
@staticmethod
def _init_city_table():
cursor = Database.connection.cursor()
cursor.execute("""
CREATE TABLE IF NOT EXISTS cities (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT
)
""")
cursor.close()