From afdbdec803e6e7b5fc736083244008c5b4a28ac5 Mon Sep 17 00:00:00 2001 From: Kakune55 Date: Fri, 15 Dec 2023 11:20:47 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E5=AF=B9MySQL=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E5=99=A8=E7=9A=84=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db.py | 62 ++++++++++++++++----------------------------------------- main.py | 2 +- 2 files changed, 18 insertions(+), 46 deletions(-) diff --git a/db.py b/db.py index 0d77f1d..9fd0bb4 100644 --- a/db.py +++ b/db.py @@ -1,25 +1,18 @@ -import config , uuid +import config , uuid , pathlib def getconn(): try: - if config.readConf()["db"]["type"] == "sqlite3": - import sqlite3 - conn = sqlite3.connect("APPData.db") - elif config.readConf()["db"]["type"] == "mysql": - import pymysql - conn = pymysql.connect(host=config.readConf()["db"]["host"], - port=config.readConf()["db"]["port"], - user=config.readConf()["db"]["user"], - password=config.readConf()["db"]["passwd"], - database=config.readConf()["db"]["database"]) + import sqlite3 + conn = sqlite3.connect(config.readConf()["db"]["path"]) return conn except: print("DB ERROR") return 0 + def dbIsOK(): #打开数据库连接 - if "init" not in config.readConf(): - config.updateConf({"init" : True}) + path = pathlib.Path(config.readConf()["db"]["path"]) + if not path.is_file(): init() try: @@ -53,10 +46,7 @@ def userSurplus(userkey): #查询userkey剩余配额 cursor = db.cursor() # 使用 execute() 方法执行 SQL 查询 - if config.readConf()["db"]["type"] == "sqlite3": - cursor.execute(f"SELECT surplus FROM usersurplus WHERE userkey = ?;",[userkey]) - else: - cursor.execute(f"SELECT surplus FROM usersurplus WHERE userkey = %s;",[userkey]) + cursor.execute(f"SELECT surplus FROM usersurplus WHERE userkey = ?;",[userkey]) # 使用 fetchone() 方法获取单条数据. data = cursor.fetchone() @@ -74,10 +64,7 @@ def reduce_value(userkey, value): # 减去对应的值 cursor = db.cursor() # 执行 SQL 查询以获取当前值 - if config.readConf()["db"]["type"] == "sqlite3": - cursor.execute(f"SELECT surplus FROM usersurplus WHERE userkey = ?;",[userkey]) - else: - cursor.execute(f"SELECT surplus FROM usersurplus WHERE userkey = %s;",[userkey]) + cursor.execute(f"SELECT surplus FROM usersurplus WHERE userkey = ?;",[userkey]) current_value = cursor.fetchone()[0] # 如果没有找到用户,则返回错误信息 @@ -89,10 +76,7 @@ def reduce_value(userkey, value): # 减去对应的值 new_value = current_value - value # 更新数据库中的值 - if config.readConf()["db"]["type"] == "sqlite3": - cursor.execute(f"UPDATE usersurplus SET surplus= ? WHERE userkey= ?;",[new_value,userkey]) - else: - cursor.execute(f"UPDATE usersurplus SET surplus= %s WHERE userkey= %s;",[new_value,userkey]) + cursor.execute(f"UPDATE usersurplus SET surplus= ? WHERE userkey= ?;",[new_value,userkey]) # 提交事务 db.commit() @@ -127,10 +111,7 @@ def delKey(userkey): cursor = db.cursor() # 使用 execute() 方法执行 SQL 查询 - if config.readConf()["db"]["type"] == "sqlite3": - cursor.execute(f"DELETE FROM usersurplus WHERE userkey = ?;", [userkey]) - else: - cursor.execute(f"DELETE FROM usersurplus WHERE userkey = %s;", [userkey]) + cursor.execute(f"DELETE FROM usersurplus WHERE userkey = ?;", [userkey]) # 提交事务 db.commit() @@ -150,24 +131,15 @@ def createKey(quota,number=1,key="null"): # 使用 execute() 方法执行 SQL 查询 output = [] - if config.readConf()["db"]["type"] == "sqlite3": - if key == "null": - for i in range(int(number)): - key = str(uuid.uuid1()) - output.append(key) - cursor.execute(f"INSERT INTO usersurplus (userkey,surplus) VALUES (?, ?);", [key, quota]) - else: + + if key == "null": + for i in range(int(number)): + key = str(uuid.uuid1()) + output.append(key) cursor.execute(f"INSERT INTO usersurplus (userkey,surplus) VALUES (?, ?);", [key, quota]) - output.append(key) else: - if key == "null": - for i in range(int(number)): - key = str(uuid.uuid1()) - output.append(key) - cursor.execute(f"INSERT INTO usersurplus (userkey,surplus) VALUES (%s, %s);", [key, quota]) - else: - cursor.execute(f"INSERT INTO usersurplus (userkey,surplus) VALUES (%s, %s);", [key, quota]) - output.append(key) + cursor.execute(f"INSERT INTO usersurplus (userkey,surplus) VALUES (?, ?);", [key, quota]) + output.append(key) # 提交事务 diff --git a/main.py b/main.py index aeb038e..035d50f 100644 --- a/main.py +++ b/main.py @@ -61,7 +61,7 @@ def login(): if flask.request.method == 'GET': return flask.render_template('login.html') userRequest = flask.request.form - if userRequest["password"] != config.readConf()["appconf"]["adminkey"]: + if userRequest["password"] != config.readConf()["adminkey"]: return flask.render_template('login.html') flask.session["admin"] = True return flask.redirect(flask.url_for('admin'))