import pymysql from config import logger class SqlClient: def __init__(self, db_config): try: self.conn = pymysql.connect(**db_config) self.cursor = self.conn.cursor() except pymysql.Error as e: logger.error(f"Error connecting to database: {e}") raise def execute_query(self, query, params=None): try: self.cursor.execute(query, params) result = self.cursor.fetchall() return result, self.cursor.description except Exception as e: logger.error(f"Error executing query: {query}, Params: {params}, Error: {e}") raise def close(self): try: self.cursor.close() self.conn.close() except Exception as e: logger.error(f"Error closing database connection: {e}") raise