aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/python/clickhouse-connect/clickhouse_connect/driver/errors.py
blob: e5b3b6466eca204505eac6cf5b981084e1ec77f7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
from clickhouse_connect.driver.context import BaseQueryContext
from clickhouse_connect.driver.exceptions import DataError


#  Error codes used in the Cython API
NO_ERROR = 0
NONE_IN_NULLABLE_COLUMN = 1

error_messages = {NONE_IN_NULLABLE_COLUMN: 'Invalid None value in non-Nullable column'}


def handle_error(error_num: int, ctx: BaseQueryContext):
    if error_num > 0:
        msg = error_messages[error_num]
        if ctx.column_name:
            msg = f'{msg}, column name: `{ctx.column_name}`'
        raise DataError(msg)