"""
@author: luojunhui
"""
import json

from applications import log


class QueryError(Exception):
    """数据库查询异常"""

    def __init__(self, error=None, sql=None):
        """
        :param error: 异常对象，可选，用于提供更详细的错误信息。
        :param sql: 出错的 SQL 语句，可选，用于调试和记录日志。
        """
        error_obj = {
            "error": str(error),
            "sql": sql,
            "message": "sql语法错误"
        }
        log(
            task="sql_query",
            function="log_query_error",
            data=error_obj
        )
        super().__init__(json.dumps(error_obj, ensure_ascii=False, indent=4))