bugfix: 修复数据库操作对象执行方法出错

This commit is contained in:
chenwj 2023-01-17 15:37:35 +08:00
parent f124bd3f25
commit 29e21caf3f
1 changed files with 7 additions and 7 deletions

View File

@ -33,7 +33,7 @@ class DB:
temp_sql = "\n".join([l.strip() for l in temp_sql.split("\n")]) temp_sql = "\n".join([l.strip() for l in temp_sql.split("\n")])
# 用于输出日志 # 用于输出日志
log_string = "执行SQL: {}\n参数: {}".format(temp_sql.strip(), str(kwargs)[:400]) log_string = f"执行SQL: {temp_sql.strip()}\n参数: {str(kwargs)[:400]}"
t = time.time() t = time.time()
try: try:
pars = dict(**kwargs) pars = dict(**kwargs)
@ -45,14 +45,14 @@ class DB:
if orig.args[0] in [111, 1205, 1213, 2003, 2013]: if orig.args[0] in [111, 1205, 1213, 2003, 2013]:
raise raise
if orig.args[0] == 1044: if orig.args[0] == 1044:
logger.error("(pymysql.err.OperationalError) (1044, Access denied for {})".format(self.session.bind.url)) logger.error(f"(pymysql.err.OperationalError) (1044, Access denied for {self.session.bind.url})")
logger.error(format_exc()) logger.error(format_exc())
raise raise
log_string += "\n执行结果:\n 执行失败了 ,错误信息:" + str(e) log_string += f"\n执行结果:\n 执行失败了 ,错误信息:{e}"
logger.error(log_string) logger.error(log_string)
raise raise
except Exception as e: except Exception as e:
log_string += "\n执行结果:\n 执行失败了 ,错误信息:" + str(e) log_string += f"\n执行结果:\n 执行失败了 ,错误信息:{e}"
logger.error(log_string) logger.error(log_string)
raise raise
finally: finally:
@ -61,12 +61,12 @@ class DB:
self.rowcount = self.result.rowcount self.rowcount = self.result.rowcount
# 插入数据时返回的主键数据 # 插入数据时返回的主键数据
self.lastrowid = self.result.lastrowid self.lastrowid = self.result.lastrowid
logger.debug("执行结果:\n 受影响行数:%d" % self.rowcount) logger.debug(f"执行结果:\n 受影响行数:{self.rowcount}")
return self return self
def all(self): def all(self):
# 获取查询列表。把ResultProxy和RowProxy类型封装成python的list和dict类型 # 获取查询列表。把ResultProxy和RowProxy类型封装成python的list和dict类型
data = [ i._asdict() for i in self.result] data = [dict(zip(i.keys(), i.values())) for i in self.result]
self.result.close() self.result.close()
return data return data
@ -92,7 +92,7 @@ class DB:
row = None row = None
# 获取第一行数据 # 获取第一行数据
for i in self.result: for i in self.result:
row = i._asdict() row = dict(zip(i.keys(), i.values()))
break break
self.result.close() self.result.close()
return row return row