Skip to content
Snippets Groups Projects
Commit 1118a8ae authored by nathan's avatar nathan
Browse files

added more dbfuncs, note: i cant debug any of it untill we have adb setup.

parent 4dbe65ba
Branches
No related tags found
No related merge requests found
import logging
import mysql.connector
import logging, json, mysql.connector
from mysql.connector import errorcode
# Vars
......@@ -42,7 +41,7 @@ def getConnection(db=""):
logging.error("Connected to server, without database.")
return conn
def selectFromTbl(table, dbname, *args):
def selectFromTbl(table, dbname, *args) -> json:
logging.debug(f"running slect statement with values: tablename='{table}'', dbname='{dbname}'', {args}")
conn = getConnection(db=dbname)
if conn != None:
......@@ -57,13 +56,72 @@ def selectFromTbl(table, dbname, *args):
dbcursor.execute(f"USE {dbname}")
dbcursor.execute(SELECT_STATEMENT)
logging.info("SELECT statement executed successfully.")
dataOut = dbcursor.fetchall()
logging.debug(f"dataOut: {dataOut}")
data = dbcursor.fetchall()
logging.debug(f"dataOut: {data}")
dbcursor.close()
conn.close()
data = json.dumps(data)
return data
else:
logging.error("conn not connected")
raise ConnectionError()
else:
logging.error("conn returned NoneType")
raise ConnectionAbortedError()
def selectFromTblWhere(table, dbname, condition, *args) -> json:
logging.debug(f"running select statement with values: tablename='{table}'', dbname='{dbname}'', {args}")
conn = getConnection(db=dbname)
if conn == None:
logging.error("conn returned NoneType")
raise ConnectionAbortedError()
if conn.is_connected():
SELECT_statement = "SELECT "
for arg in args:
SELECT_statement.append(f"{arg}, ")
SELECT_statement.removesuffix(", ")
SELECT_statement.append(f" from {table};")
dbcursor = conn.cursor()
dbcursor.execute(f"USE {dbname}")
dbcursor.execute(SELECT_statement)
logging.info("SELECT statement executed successfully.")
data = dbcursor.fetchall()
logging.debug(f"dataOut: {data}")
dbcursor.close()
conn.close()
data = json.dumps(data)
return data
else:
logging.error("conn not connected")
raise ConnectionError()
def saveToTbl(table, dbname, jsonData):
logging.debug(f"running update statment with values: tablename='{table}', dbname='{dbname}', data='{jsonData}'")
conn = getConnection(db=dbname)
if conn == None:
logging.error("conn returned NoneType")
raise ConnectionAbortedError()
if conn.is_connected():
logging.debug("MySQL Connection is established.")
INSERT_statement = f"INSERT INTO {table} ("
dictData = json.loads(jsonData)
keys = ""
values = ""
for key, value in dictData.items():
keys.append(f"{key}, ")
values.append(f"{value}, ")
INSERT_statement.append(f"{keys.removesuffix(", ")}) VALUES ({values.removesuffix(", ")});")
dbcursor = conn.cursor()
dbcursor.execute(INSERT_statement)
conn.commit()
dbcursor.close()
conn.close()
logging.debug("INSERT query executed with no issues.")
else:
logging.error("conn not connected")
raise ConnectionError()
import logging
import random
import logging, json
from .dbfunc import *
from .cinemaObj import Cinema
......@@ -55,8 +55,8 @@ class StaffUser(object):
def manageBooking(self):
raise NotImplementedError()
def updateFromDataBase(self) -> None:
# call dbFunc
def updateFromDataBase(self, userID) -> None:
selectFromTblWhere("tblUsers", "", f"user_id={userID}", "*")
# gets dbData in form of json
# convert to dict?
# update self data with new values.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment