From cb36ac3d3ddf840545680cf83db2222c57c977f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rodrigo=20G=C3=B3mez=20Maitret?= Date: Wed, 27 Apr 2022 20:39:43 -0500 Subject: [PATCH] Dictionaries --- loaf/__init__.py | 36 ++++++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/loaf/__init__.py b/loaf/__init__.py index ef37414..044b8c8 100644 --- a/loaf/__init__.py +++ b/loaf/__init__.py @@ -6,26 +6,29 @@ pasw_ = "" db_ = None creds_ = "" +cursor_ = "DEFAULT" # Make this differently, for the love of god! -def bake(host=host_, port=port_, user=user_, pasw=pasw_, db=db_, creds=creds_): - global host_, port_, user_, pasw_, db_, creds_ +def bake(host=host_, port=port_, user=user_, pasw=pasw_, db=db_, creds=creds_, cursor=cursor_): + global host_, port_, user_, pasw_, db_, creds_, cursor_ if host != "": host_=host if port != "": port_=port if user != "": user_=user if pasw != "": pasw_=pasw if db != "": db_=db if creds != "": creds_=creds + if cursor != "": cursor_=cursor # A query. def query(query): conn = pymysql.connect(host=host_, port=port_, user=user_, passwd=pasw_, db=db_) - conn_object = conn.cursor() + conn_object = conn.cursor(pymysql.cursors.DictCursor) if cursor_=="DICTIONARY" else conn.cursor() conn_object.execute(query) - str = conn_object.fetchall() + response = conn_object.fetchall() + print(response) conn.commit() conn.close() - return str + return response # Call a stored procedure. def call(func, *args): @@ -37,6 +40,16 @@ def call(func, *args): q = query(call) return q[0][0] if (len(q)==1 and len(q[0])==1) else q +# Quick insert. +""" +def insert(table, cols=[], vals): + call = f"INSERT INTO {table}" + if len(cols): + call += '(' + for col in cols: + # INCOMPLETO! +""" + # Quick query. def all(table): return query(f"SELECT * from {table};") @@ -50,4 +63,15 @@ def getTomorrow(): return dat.strftime("%Y-%m-%d") def parseNull(val): - return "NULL" if val in ["", "NULL"] else "'"+val+"'" + if val in [None, "", "NULL"]: + return "NULL" + elif isinstance(val, datetime.date): + return parseDate(val) + else: + return "'"+val+"'" + +def parseDate(val): + return val.strftime("%Y-%m-%d") + +def lol(): + print("lol")