def drop_table(self, table_name: str): if self.is_table_exists(table_name): drop_sql = f"DROP TABLE `{table_name}`" self._execute(drop_sql) logger.debug(f"{table_name}:表格表删除成功") else: logger.debug(f"{table_name}:数据表不存在")
def create_table(self, table_name: str, field_dict: dict): if not self.is_table_exists(table_name): create_sql = self.gen_create_table_sql(table_name, field_dict) self._execute(create_sql) logger.debug(f"{table_name}:数据表创建成功") else: logger.debug(f"{table_name}:数据表已经存在")
def wrapper(self, *args, **kwargs): self.cursor_list.append(self.get_cursor()) # print(self.cursor_list) try: res = func(self, *args, **kwargs) logger.debug(f"{func.__name__} Mysql语句执行成功") return res except: self.db.rollback() logger.debug(f"{func.__name__} Mysql语句执行异常") traceback.print_exc() return 0 finally: self.cursor.close() self.cursor_list.pop()
def delete(self, table_name: str, cond_dict: dict): """ :param table_name: :param cond_dict: the key can not be changed. example:{ "field": "user_id" "operator": "=" "value": 10 } :return: str """ sql = self.gen_delete_sql(table_name, cond_dict) # print(sql) self._execute(sql) self.db.commit() logger.debug(f"数据表{table_name} 数据删除成功")
def query_all(self, table_name: str, order_field: str = '', order_by: str = 'ASC'): """ :param table_name: :param order_field: :param order_by: 'ASC' or 'DESC' :return: """ sql = f"SELECT * FROM `{table_name}`" if order_field: order_by_sql = f"ORDER BY `{order_field}` {order_by}" sql = sql + ' ' + order_by_sql self._execute(sql) res = self.cursor.fetchall() logger.debug("所有数据获取成功") return res
def delete_all(self, table_name: str): sql = f"DELETE FROM `{table_name}`" self._execute(sql) self.db.commit() logger.debug("所有数据删除成功")
def insert(self, table_name: str, record: dict): sql = self.gen_insert_sql(table_name, record) self._execute(sql, record) self.db.commit() logger.debug("数据插入并提交成功")