Funciones principales de consulta
chdb.query
Devuelve
Devuelve el resultado de la consulta en el formato especificado:
Genera
Ejemplos
chdb.sql
Devuelve
Devuelve el resultado de la consulta en el formato especificado:
Genera
Ejemplos
chdb.to_arrowTable
Devuelve
Lanza
Ejemplo
chdb.to_df
Devuelve
Excepciones
Ejemplo
Gestión de conexiones y sesiones
chdb.connect
Formatos básicos
Con parámetros de consulta
Gestión de parámetros de consulta
Los parámetros de consulta se pasan al motor de ClickHouse como argumentos de inicio.
Gestión especial de parámetros:
Para ver la lista completa de parámetros, consulta
clickhouse local --help --verbose
Devuelve
Lanza
Ejemplos
Connection- Clase de conexión a la base de datosCursor- Cursor de la base de datos para operaciones de DB-API 2.0
Gestión de excepciones
class chdb.ChdbError
Exception
Clase base de excepción para los errores relacionados con chDB.
Esta excepción se produce cuando falla la ejecución de una consulta de chDB o se encuentra
un error. Hereda de la clase estándar Exception de Python y
proporciona información sobre errores del motor subyacente de ClickHouse.
class chdb.session.Session
object
La sesión mantendrá el estado de la consulta.
Si path es None, se creará un directorio temporal y se usará como ruta de la base de datos,
y el directorio temporal se eliminará cuando se cierre la sesión.
También puede pasar una ruta para crear una base de datos en esa ubicación, donde se conservarán sus datos.
También puede usar una cadena de conexión para pasar la ruta y otros parámetros.
Gestión de los argumentos de la cadena de conexiónLas cadenas de conexión que contienen parámetros de consulta como “file:test.db?param1=value1¶m2=value2”
pasarán “param1=value1” al motor de ClickHouse como argumentos de inicio.Para obtener más detalles, consulte
clickhouse local –help –verboseTratamiento de algunos argumentos especiales:- “mode=ro” se convertiría en “–readonly=1” para ClickHouse (modo de solo lectura)
cleanup
Este método nunca lanzará una excepción, por lo que es seguro llamarlo en
bloques
finally o destructores.close()- Para cerrar la sesión explícitamente con propagación de errores
close
Este método se llama automáticamente cuando la sesión se usa como gestor de contexto
o cuando se destruye el objeto de sesión.
query
Devuelve
Devuelve los resultados de la consulta en el formato especificado.
El tipo de retorno exacto depende del parámetro de formato:
- Los formatos de cadena (CSV, JSON, etc.) devuelven str
- Los formatos binarios (Arrow, Parquet) devuelven bytes
El formato “Debug” no es compatible y se convertirá automáticamente
a “CSV” con una advertencia.
Para depuración, usa parámetros de la cadena de conexión en su lugar.
send_query()- Para ejecutar consultas en streamingsql- Alias de este método
send_query
Devuelve
Lanza
El formato “Debug” no es compatible y se convertirá automáticamente
a “CSV” con una advertencia. Para tareas de depuración, use en su lugar los parámetros de la cadena de conexión.
query()- Para ejecutar consultas sin streamingchdb.state.sqlitelike.StreamingResult- Iterador de resultados en streaming
sql
Devuelve
Devuelve los resultados de la consulta en el formato especificado.
El tipo de retorno exacto depende del parámetro de formato:
- Los formatos de texto (CSV, JSON, etc.) devuelven str
- Los formatos binarios (Arrow, Parquet) devuelven bytes
El formato “Debug” no es compatible y se convertirá automáticamente
a “CSV” con una advertencia. Para depurar, use parámetros de la cadena de conexión
en su lugar.
send_query()- Para ejecutar consultas en streamingsql- Alias para este método
Gestión del estado
chdb.state.connect
Formatos básicos
Formatos de cadena de conexión admitidos:
Con parámetros de consulta
Manejo de parámetros de consulta
Los parámetros de consulta se pasan al motor de ClickHouse como argumentos de inicio.
Manejo especial de parámetros:
Para ver la lista completa de parámetros, consulte
clickhouse local --help --verbose
Devuelve
Lanza
Ejemplos
Connection- Clase de conexión a la base de datosCursor- Cursor de base de datos para operaciones de DB-API 2.0
clase chdb.state.sqlitelike.Connection
object
Sintaxis
close
Este método es idempotente; puede llamarse varias veces sin problema.
cursor
Al crear un nuevo cursor, se reemplazará cualquier cursor existente asociado
a esta conexión. Solo se admite un cursor por conexión.
Cursor- Implementación de cursor de base de datos
query
Devuelve
Genera
Ejemplos
send_query()- Para ejecutar consultas en streaming
send_query
Devuelve
Genera
Solo el formato “Arrow” admite el método
record_batch() en el StreamingResult devuelto.query()- Para ejecutar consultas sin streamingStreamingResult- Iterador de resultados en streaming
class chdb.state.sqlitelike.StreamingResult
object
Iterador de resultados en streaming para procesar resultados de consultas de gran tamaño.
Esta clase proporciona una interfaz de iterador para transmitir resultados de consultas sin
cargar todo el conjunto de resultados en memoria. Admite varios formatos de salida
y proporciona métodos para la recuperación manual de resultados y la transmisión de RecordBatch de PyArrow.
fetch
Ejemplos
cancel
close
cancel(). Cierra el iterador del resultado en streaming
y libera los recursos asociados.
Sintaxis
record_batch
Devuelve
Este método solo está disponible cuando la consulta en streaming se inició
con
format="Arrow". Si se usa con otros formatos, se producirá un error.Protocolo de iteración
Protocolo del gestor de contexto
clase chdb.state.sqlitelike.Cursor
object
close
Este método es idempotente: se puede llamar varias veces sin problema.
El cursor también se cierra automáticamente cuando se cierra la conexión.
column_names
Ejemplos
column_types()- Obtiene información sobre el tipo de columnadescription- Descripción de columna de la DB-API 2.0
column_types
Ejemplos
column_names()- Obtiene información sobre los nombres de las columnasdescription- descripción de columnas de DB-API 2.0
commit
commit de cualquier transacción pendiente.
Este método hace commit de cualquier transacción pendiente de la base de datos. En ClickHouse,
la mayoría de las operaciones se confirman automáticamente, pero este método se proporciona por
compatibilidad con DB-API 2.0.
ClickHouse normalmente confirma las operaciones automáticamente, por lo que los
commit explícitos
no suelen ser necesarios. Este método se proporciona por compatibilidad
con el flujo de trabajo estándar de DB-API 2.0.property description : list
Esto sigue la especificación DB-API 2.0 para cursor.description.
Solo los dos primeros elementos (name y type_code) contienen datos
significativos en esta implementación.
column_names()- Obtener solo los nombres de las columnascolumn_types()- Obtener solo los tipos de las columnas
execute
fetch. Se encarga del análisis de los datos de resultados y
de la conversión automática de tipos de datos de ClickHouse.
Sintaxis
Excepciones
Este método sigue las especificaciones de DB-API 2.0 para
cursor.execute().
Después de la ejecución, use fetchone(), fetchmany() o fetchall() para
recuperar los resultados.El método convierte automáticamente los tipos de datos de ClickHouse a los
tipos de Python adecuados:
- Tipos Int/UInt → int
- Tipos Float → float
- String/FixedString → str
- DateTime → datetime.datetime
- Date → datetime.date
- Bool → bool
fetchone()- Recuperar una sola filafetchmany()- Recuperar varias filasfetchall()- Recuperar todas las filas restantes
fetchall
Ejemplos
fetchone()- Obtener una filafetchmany()- Obtener varias filas en lotes
fetchmany
Devuelve
Este método sigue las especificaciones de DB-API 2.0. Devolverá menos
de ‘size’ filas si el conjunto de resultados se agota.
fetchone()- Obtiene una sola filafetchall()- Obtiene todas las filas restantes
fetchone
Este método sigue las especificaciones de DB-API 2.0. Los valores de
las columnas se convierten automáticamente a los tipos de Python
adecuados según los tipos de columna de ClickHouse.
fetchmany()- Obtener varias filasfetchall()- Obtener todas las filas restantes
chdb.state.sqlitelike
Devuelve
Genera
Esta función requiere que tanto pyarrow como pandas estén instalados.
Instálalos con:
pip install pyarrow pandaschdb.state.sqlitelike.to_df
Devuelve:
Lanza
Esta función usa múltiples hilos para la conversión de Arrow a Pandas
para mejorar el rendimiento en conjuntos de datos grandes.
to_arrowTable()- Para convertir al formato tabla de PyArrow
Integración con DataFrame
clase chdb.dataframe.Table
Interfaz de la API de bases de datos (DBAPI) 2.0
- Conexiones: Gestión de conexiones de bases de datos mediante cadenas de conexión
- Cursores: Ejecución de consultas y recuperación de resultados
- Sistema de tipos: Constantes de tipo y conversores compatibles con DB-API 2.0
- Gestión de errores: Jerarquía estándar de excepciones de bases de datos
- Seguridad de hilos: Seguridad de hilos de nivel 1 (los hilos pueden compartir módulos, pero no conexiones)
Funciones principales
chdb.dbapi.connect
Genera
chdb.dbapi.get_client_info()
Constructores de tipos
chdb.dbapi.Binary(x)
bytes para usarla con campos binarios de la base de datos, de acuerdo con la especificación DB-API 2.0.
Sintaxis
Devuelve
Clase Connection
class chdb.dbapi.connections.Connection(path=None)
object
Conexión compatible con DB-API 2.0 a la base de datos chDB.
Esta clase proporciona una interfaz estándar de DB-API para conectarse a bases de datos chDB e interactuar con ellas. Admite tanto bases de datos en memoria como bases de datos basadas en archivos.
La conexión administra el engine de chDB subyacente y proporciona métodos para ejecutar consultas, gestionar transacciones (sin efecto en ClickHouse) y crear cursores.
Variables
Ejemplos
ClickHouse no admite transacciones tradicionales, por lo que las operaciones commit() y rollback()
no tienen efecto, pero se proporcionan para cumplir con DB-API.
close
commit
Esto no tiene efecto en chDB/ClickHouse, ya que no admite
transacciones tradicionales. Se incluye para cumplir con DB-API 2.0.
cursor
Devuelve
Genera
Ejemplo
escape
Devuelve
Ejemplo
escape_string
Devuelve
property open
query
Devuelve
Genera
Ejemplo
property resp
Esta propiedad se actualiza cada vez que se llama directamente a query().
No refleja las consultas ejecutadas mediante cursores.
rollback
Esto es una operación no-op para chDB/ClickHouse, ya que no admite
transacciones tradicionales. Se incluye para cumplir con DB-API 2.0.
Clase Cursor
class chdb.dbapi.cursors.Cursor
object
Cursor de DB-API 2.0 para ejecutar consultas y obtener resultados.
El cursor proporciona métodos para ejecutar sentencias SQL, gestionar los resultados de las consultas
y desplazarse por los conjuntos de resultados. Admite el enlace de parámetros, operaciones masivas
y sigue las especificaciones de DB-API 2.0.
No cree instancias de Cursor directamente. Use Connection.cursor() en su lugar.
Ejemplos
Consulte DB-API 2.0 Cursor Objects
para obtener todos los detalles de la especificación.
callproc
Devuelve
chDB/ClickHouse no admite procedimientos almacenados en el sentido tradicional.
Este método se proporciona para cumplir con DB-API 2.0, pero no realiza
ninguna operación. Use execute() para todas las operaciones SQL.
close
execute
Devuelve
Estilos de parámetros
Ejemplos
executemany(query, args)
Devuelve
Ejemplos
Este método mejora el rendimiento de las operaciones INSERT y UPDATE de varias filas
al optimizar el proceso de ejecución de la consulta.
fetchall()
Lanza
Ejemplo
fetchmany
Devuelve
Lanza
Ejemplo
fetchone
Lanza
Ejemplo
max_stmt_length = 1024000
executemany().
El valor predeterminado es 1024000.
mogrify
Devuelve
Ejemplo
Este método sigue la extensión de DB-API 2.0 que utiliza Psycopg.
nextset
chDB/ClickHouse no admite múltiples conjuntos de resultados en una sola consulta.
Este método se proporciona para cumplir con DB-API 2.0, pero siempre devuelve None.
setinputsizes
Este método no realiza ninguna acción, pero es obligatorio según la especificación DB-API 2.0.
chDB gestiona automáticamente el tamaño de los parámetros de forma interna.
setoutputsizes
Este método no hace nada, pero es obligatorio según la especificación DB-API 2.0.
chDB gestiona automáticamente el tamaño de salida de forma interna.
Clases de excepciones
Estas clases de excepción cumplen con la especificación de Python DB API 2.0
y proporcionan un manejo de errores coherente en distintas operaciones de base de datos.
- Python Database API Specification v2.0
chdb.dbapi.connections- Gestión de conexiones de base de datoschdb.dbapi.cursors- Operaciones del cursor de base de datos
excepción chdb.dbapi.err.DataError
DatabaseError
Excepción que se produce por errores debidos a problemas con los datos procesados.
Esta excepción se genera cuando las operaciones de la base de datos fallan debido a problemas con
los datos que se están procesando, como por ejemplo:
- Operaciones de división por cero
- Valores numéricos fuera de rango
- Valores de fecha/hora no válidos
- Errores por truncamiento de cadenas
- Errores de conversión de tipos
- Formato de datos no válido para el tipo de columna
Ejemplos
excepción chdb.dbapi.err.DatabaseError
Error
Excepción generada para errores relacionados con la base de datos.
Esta es la clase base para todos los errores relacionados con la base de datos. Abarca
todos los errores que se producen durante las operaciones de base de datos y están relacionados con la
propia base de datos, en lugar de con la interfaz.
Los casos habituales incluyen:
- Errores de ejecución de SQL
- Problemas de conectividad con la base de datos
- Problemas relacionados con transacciones
- Infracciones de restricciones específicas de la base de datos
Esta es la clase principal para tipos de errores de base de datos más específicos,
como
DataError, OperationalError, etc.excepción chdb.dbapi.err.Error
StandardError
Excepción que es la clase base de todas las demás excepciones de error (no Warning).
Esta es la clase base de todas las excepciones de error en chdb, excluidas las advertencias.
Sirve como clase padre de todas las condiciones de error de la base de datos que impiden
la correcta finalización de las operaciones.
Esta jerarquía de excepciones sigue la especificación Python DB API 2.0.
Warning- Para advertencias no fatales que no impiden la finalización de la operación
excepción chdb.dbapi.err.IntegrityError
DatabaseError
Excepción que se produce cuando la integridad relacional de la base de datos se ve afectada.
Esta excepción se produce cuando las operaciones de la base de datos infringen restricciones de integridad,
entre ellas:
- Infracciones de restricciones de clave foránea
- Infracciones de clave primaria o de restricción de unicidad (claves duplicadas)
- Infracciones de restricciones CHECK
- Infracciones de restricciones NOT NULL
- Infracciones de integridad referencial
Ejemplos
exception chdb.dbapi.err.InterfaceError
Error
Excepción que se genera por errores relacionados con la interfaz de la base de datos, y no con la propia base de datos.
Esta excepción se genera cuando hay problemas con la implementación
de la interfaz de la base de datos, como:
- Parámetros de conexión no válidos
- Uso incorrecto de la API (llamadas a métodos en conexiones cerradas)
- Errores de protocolo a nivel de interfaz
- Fallos al importar o inicializar el módulo
Estos errores suelen ser errores de programación o problemas de configuración
que pueden resolverse corrigiendo el código cliente o la configuración.
excepción chdb.dbapi.err.InternalError
DatabaseError
Excepción que se lanza cuando la base de datos encuentra un error interno.
Esta excepción se produce cuando el sistema de base de datos detecta
errores internos que no han sido causados por la aplicación, como por ejemplo:
- Estado de cursor no válido (el cursor ya no es válido)
- Inconsistencias en el estado de la transacción (la transacción está desincronizada)
- Problemas de corrupción de la base de datos
- Corrupción de la estructura interna de datos
- Errores de base de datos a nivel del sistema
Por lo general, estos errores están fuera del control de la aplicación
y pueden requerir reiniciar la base de datos o realizar operaciones de reparación.
excepción chdb.dbapi.err.NotSupportedError
DatabaseError
Excepción que se produce cuando no se admite un método o una API de base de datos.
Esta excepción se produce cuando la aplicación intenta usar funciones de la base de datos
o métodos de la API que no son compatibles con la configuración o la versión actuales de la base de datos,
por ejemplo:
- Solicitar
rollback()en conexiones sin compatibilidad con transacciones - Usar funciones avanzadas de SQL no compatibles con la versión de la base de datos
- Llamar a métodos no implementados por el controlador actual
- Intentar usar funciones de la base de datos deshabilitadas
Ejemplos
Consulte la documentación de la base de datos y las capacidades del controlador para evitar
estos errores. Considere alternativas de recuperación adecuadas cuando sea posible.
excepción chdb.dbapi.err.OperationalError
DatabaseError
Excepción que se produce ante errores relacionados con el funcionamiento de la base de datos.
Esta excepción se produce por errores que ocurren durante el funcionamiento de la base de datos
y que no están necesariamente bajo el control del programador, entre ellos:
- Desconexión inesperada de la base de datos
- Servidor de base de datos no encontrado o inaccesible
- Fallos en el procesamiento de transacciones
- Errores de asignación de memoria durante el procesamiento
- Falta de espacio en disco o agotamiento de recursos
- Errores internos del servidor de base de datos
- Fallos de autenticación o autorización
Estos errores suelen ser transitorios y pueden resolverse reintentando
la operación o corrigiendo problemas a nivel del sistema.
exception chdb.dbapi.err.ProgrammingError
DatabaseError
Excepción que se produce por errores de programación en operaciones de base de datos.
Esta excepción se produce cuando hay errores de programación en el
uso que hace la aplicación de la base de datos, entre ellos:
- Tabla o columna no encontrada
- La tabla o el índice ya existen al intentar crearlos
- Errores de sintaxis SQL en sentencias
- Número incorrecto de parámetros especificados en sentencias preparadas
- Operaciones SQL no válidas (p. ej., DROP sobre objetos inexistentes)
- Uso incorrecto de métodos de la API de base de datos
Ejemplos
excepción chdb.dbapi.err.StandardError
Exception
Excepción relacionada con las operaciones en chdb.
Esta es la clase base para todas las excepciones relacionadas con chdb. Hereda de
la clase Exception integrada de Python y actúa como raíz de la jerarquía de excepciones
para las operaciones de base de datos.
Esta clase de excepción sigue la especificación Python DB API 2.0
para el manejo de excepciones de bases de datos.
excepción chdb.dbapi.err.Warning
StandardError
Excepción que se genera para advertencias importantes, como truncamientos de datos durante la inserción, etc.
Esta excepción se genera cuando la operación de base de datos se completa, pero con
advertencias importantes que deben señalarse a la aplicación.
Entre los casos más comunes se incluyen:
- Truncamiento de datos durante la inserción
- Pérdida de precisión en conversiones numéricas
- Advertencias de conversión de conjunto de caracteres
Esto sigue la especificación Python DB API 2.0 para las excepciones de advertencia.
Constantes del módulo
chdb.dbapi.apilevel = '2.0'
object._\_str_\_() (si está definido)
o de repr(object).
- encoding tiene como valor predeterminado ‘utf-8’.
- errors tiene como valor predeterminado ‘strict’.
chdb.dbapi.threadsafety = 1
chdb.dbapi.paramstyle = 'format'
Constantes de tipo
chdb.dbapi.STRING = frozenset({247, 253, 254})
frozenset ampliado para la comparación de tipos de DB-API 2.0.
Esta clase amplía frozenset para admitir la semántica de comparación de tipos de DB-API 2.0.
Permite una verificación de tipos flexible en la que los elementos individuales pueden compararse
con el conjunto mediante operadores tanto de igualdad como de desigualdad.
Se utiliza para constantes de tipo como STRING, BINARY, NUMBER, etc., lo que permite
comparaciones como “field_type == STRING”, donde field_type es un único valor de tipo.
Ejemplos
chdb.dbapi.BINARY = frozenset({249, 250, 251, 252})
frozenset ampliado para la comparación de tipos de DB-API 2.0.
Esta clase amplía frozenset para admitir la semántica de comparación de tipos de DB-API 2.0.
Permite una verificación de tipos flexible en la que los elementos individuales pueden compararse
con el conjunto mediante operadores tanto de igualdad como de desigualdad.
Se utiliza para constantes de tipo como STRING, BINARY, NUMBER, etc., lo que permite
comparaciones como “field_type == STRING”, donde field_type es un único valor de tipo.
Ejemplos
chdb.dbapi.NUMBER = frozenset({0, 1, 3, 4, 5, 8, 9, 13})
frozenset ampliado para la comparación de tipos de DB-API 2.0.
Esta clase amplía frozenset para admitir la semántica de comparación de tipos de DB-API 2.0.
Permite una verificación de tipos flexible en la que los elementos individuales pueden compararse
con el conjunto mediante operadores de igualdad y desigualdad.
Se utiliza para constantes de tipo como STRING, BINARY, NUMBER, etc., lo que permite
comparaciones como “field_type == STRING”, donde field_type es un único valor de tipo.
Ejemplos
chdb.dbapi.DATE = frozenset({10, 14})
frozenset ampliado para la comparación de tipos de DB-API 2.0.
Esta clase amplía frozenset para admitir la semántica de comparación de tipos de DB-API 2.0.
Permite una verificación de tipos flexible en la que los elementos individuales pueden compararse
con el conjunto mediante operadores de igualdad y desigualdad.
Se usa para constantes de tipo como STRING, BINARY, NUMBER, etc., para permitir
comparaciones como “field_type == STRING”, donde field_type es un único valor de tipo.
Ejemplos
chdb.dbapi.TIME = frozenset({11})
frozenset ampliado para la comparación de tipos de DB-API 2.0.
Esta clase amplía frozenset para admitir la semántica de comparación de tipos de DB-API 2.0.
Permite una verificación de tipos flexible, en la que los elementos individuales pueden compararse
con el conjunto mediante operadores de igualdad y desigualdad.
Se usa para constantes de tipo como STRING, BINARY, NUMBER, etc., lo que permite
comparaciones como “field_type == STRING”, donde field_type es un único valor de tipo.
Ejemplos
chdb.dbapi.TIMESTAMP = frozenset({7, 12})
frozenset ampliado para la comparación de tipos de DB-API 2.0.
Esta clase amplía frozenset para admitir la semántica de comparación de tipos de DB-API 2.0.
Permite una verificación de tipos flexible, en la que los elementos individuales pueden compararse
con el conjunto mediante operadores de igualdad y desigualdad.
Se utiliza para constantes de tipo como STRING, BINARY, NUMBER, etc., lo que permite
comparaciones como “field_type == STRING”, donde field_type es un único valor de tipo.
Ejemplos
chdb.dbapi.DATETIME = frozenset({7, 12})
chdb.dbapi.ROWID = frozenset({})
- Gestión de conexiones: Cierre siempre las conexiones y los cursores al terminar
- Administradores de contexto: Use bloques
withpara una limpieza automática - Procesamiento por lotes: Use
fetchmany()para conjuntos de resultados grandes - Manejo de errores: Encapsule las operaciones de base de datos en bloques try-except
- Vinculación de parámetros: Use consultas parametrizadas siempre que sea posible
- Gestión de memoria: Evite
fetchall()con conjuntos de datos muy grandes
- La interfaz DB-API 2.0 de chDB es compatible con la mayoría de las herramientas de bases de datos de Python
- La interfaz proporciona seguridad para hilos de nivel 1 (los hilos pueden compartir módulos, pero no conexiones)
- Las cadenas de conexión admiten los mismos parámetros que las sesiones de chDB
- Se admiten todas las excepciones estándar de DB-API 2.0
Funciones definidas por el usuario (UDF)
chdb.udf.chdb_udf
Notas
- La función debe ser sin estado. Solo se admiten UDFs, no UDAFs.
- El tipo de retorno predeterminado es String. El tipo de retorno debe ser uno de los tipos de datos de ClickHouse.
- La función debe aceptar argumentos de tipo String. Todos los argumentos son cadenas.
- La función se llamará para cada línea de entrada.
- La función debe ser una función de Python pura. Importe todos los módulos utilizados EN LA FUNCIÓN.
- El intérprete de Python utilizado es el mismo que se usa para ejecutar el script.
chdb.udf.generate_udf
- Un script ejecutable en Python que procesa los datos de entrada
- Un archivo de configuración XML que registra la UDF en ClickHouse
Esta función suele ser invocada por el decorador @chdb_udf y no debería
ser invocada directamente por los usuarios.
Utilidades
chdb.utils.convert_to_columnar
Devuelve
Ejemplo
chdb.utils.flatten_dict
Devuelve
Ejemplo
chdb.utils.infer_data_type
Devuelve
- Si todos los valores de la lista son None, la función devuelve “string”.
- Si algún valor de la lista es una cadena, la función devuelve inmediatamente “string”.
- La función asume que los valores numéricos pueden representarse como enteros, decimales o números de coma flotante según su rango y precisión.
chdb.utils.infer_data_types
Devuelve
Clases base abstractas
class chdb.rwabc.PyReader(data: Any)`
ABC
abstractmethod read
Returns
class chdb.rwabc.PyWriter
ABC
abstractmethod finalize
abstractmethod write
Gestión de excepciones
class chdb.ChdbError
Exception
Clase base de excepción para errores relacionados con chDB.
Esta excepción se produce cuando falla la ejecución de una consulta de chDB o se produce
un error. Hereda de la clase Exception estándar de Python y
proporciona información sobre el error del motor de ClickHouse subyacente.
El mensaje de la excepción suele contener información detallada del error
de ClickHouse, incluidos errores de sintaxis, incompatibilidades de tipos, ausencia de
tablas o columnas y otros problemas de ejecución de consultas.
Variables
Ejemplos
Esta excepción se genera automáticamente mediante chdb.query() y las
funciones relacionadas cuando el motor de ClickHouse subyacente informa de un error.
Debe capturar esta excepción al gestionar consultas que podrían fallar
para proporcionar un manejo de errores adecuado en su aplicación.
Información de la versión
chdb.chdb_version = ('3', '6', '0')
iterable, la tupla se inicializa a partir de sus elementos.
Si el argumento es una tupla, el valor devuelto es el mismo objeto.
chdb.engine_version = '25.5.2.1'
- encoding usa ‘utf-8’ de forma predeterminada.
- errors usa ‘strict’ de forma predeterminada.
chdb.__version__ = '3.6.0'
- encoding tiene como valor predeterminado ‘utf-8’.
- errors tiene como valor predeterminado ‘strict’.