Funções principais de consulta
chdb.query
Retorno
Retorna o resultado da consulta no formato especificado:
Exceções
Exemplos
chdb.sql
Retorno
Retorna o resultado da consulta no formato especificado:
Exceções
Exemplos
chdb.to_arrowTable
Retorna
Exceções
Exemplo
chdb.to_df
Retorna
Lança
Exemplo
Gerenciamento de conexões e sessões
chdb.connect
Formatos básicos
Com parâmetros de consulta
Tratamento de parâmetros de consulta
Os parâmetros de consulta são passados para o mecanismo do ClickHouse como argumentos de inicialização.
Tratamento especial de parâmetros:
Para ver a lista completa de parâmetros, consulte
clickhouse local --help --verbose
Retorna
Exceções
Exemplos
Connection- Classe de conexão com o banco de dadosCursor- Cursor do banco de dados para operações da DB-API 2.0
Tratamento de exceções
class chdb.ChdbError
Exception
Classe base de exceção para erros relacionados ao chDB.
Essa exceção é levantada quando a execução de uma consulta do chDB falha ou encontra
um erro. Ela herda da classe Exception padrão do Python e
fornece informações de erro do mecanismo do ClickHouse subjacente.
class chdb.session.Session
object
A sessão preserva o estado da consulta.
Se path for None, ela criará um diretório temporário e o usará como caminho do banco de dados,
e o diretório temporário será removido quando a sessão for fechada.
Você também pode informar um path para criar um banco de dados nesse caminho, onde seus dados serão armazenados.
Você também pode usar uma string de conexão para informar o path e outros parâmetros.
Tratamento dos argumentos da string de conexãoStrings de conexão que contêm parâmetros de consulta, como “file:test.db?param1=value1¶m2=value2”:
“param1=value1” será passado ao mecanismo do ClickHouse como argumento de inicialização.Para mais detalhes, consulte
clickhouse local –help –verboseTratamento de alguns argumentos especiais:- “mode=ro” será convertido em “–readonly=1” para o ClickHouse (modo somente leitura)
cleanup
Este método nunca lançará uma exceção, o que torna seguro chamá-lo em
blocos finally ou destrutores.
close()- Para fechar explicitamente a sessão, com propagação de erro
close
Este método é chamado automaticamente quando a sessão é usada como gerenciador de contexto
ou quando o objeto de sessão é destruído.
query
Retorna
Retorna os resultados da consulta no formato especificado.
O tipo de retorno exato depende do parâmetro de formato:
- Formatos de texto (CSV, JSON etc.) retornam str
- Formatos binários (Arrow, Parquet) retornam bytes
O formato “Debug” não é suportado e será convertido automaticamente
para “CSV” com um aviso.
Para depuração, use os parâmetros da string de conexão.
send_query()- Para executar consultas em streamingsql- Alias deste método
send_query
Retorna
Gera
O formato “Debug” não é compatível e será convertido automaticamente
para “CSV”, com um aviso. Para depuração, use os parâmetros da string de conexão.
query()- Para executar consultas sem streamingchdb.state.sqlitelike.StreamingResult- Iterador de resultados em streaming
sql
Retorno
Retorna os resultados da consulta no formato especificado.
O tipo de retorno exato depende do parâmetro
fmt:
- Formatos de texto (CSV, JSON etc.) retornam str
- Formatos binários (Arrow, Parquet) retornam bytes
O formato “Debug” não é compatível e será convertido automaticamente
para “CSV” com um aviso. Para depuração, use os parâmetros da string de conexão
em vez disso.
send_query()- Para executar consultas em streamingsql- Apelido deste método
Gerenciamento de estado
chdb.state.connect
Formatos básicos
Formatos de string de conexão compatíveis:
Com parâmetros de consulta
Tratamento de parâmetros de consulta
Os parâmetros de consulta são passados para o mecanismo do ClickHouse como argumentos de inicialização.
Tratamento especial de parâmetros:
Para ver a lista completa de parâmetros, consulte
clickhouse local --help --verbose
Retorna
Gera
Exemplos
Connection- Classe de conexão com banco de dadosCursor- Cursor de banco de dados para operações da DB-API 2.0
class chdb.state.sqlitelike.Connection
object
Sintaxe
close
Este método é idempotente: chamá-lo várias vezes é seguro.
cursor
A criação de um novo cursor substituirá qualquer cursor existente associado
a esta conexão. Há suporte para apenas um cursor por conexão.
Cursor- Implementação do cursor do banco de dados
query
Retorna
Gera
Exemplos
send_query()- Para executar consultas em streaming
send_query
Retorna
Gera
Somente o formato “Arrow” oferece suporte ao método
record_batch() no StreamingResult retornado.query()- Para executar consultas sem streamingStreamingResult- Iterador de resultados em streaming
class chdb.state.sqlitelike.StreamingResult
object
Iterador de resultados em streaming para processar resultados de consultas grandes.
Esta classe fornece uma interface de iterador para transmitir resultados de consultas sem
carregar todo o conjunto de resultados na memória. Ela oferece suporte a vários formatos de saída
e fornece métodos para buscar resultados manualmente e para streaming de PyArrow RecordBatch.
fetch
Exemplos
cancel
close
cancel(). Fecha o iterador do resultado em streaming
e libera quaisquer recursos associados.
Sintaxe
record_batch
Retorno
Este método só está disponível quando a consulta em streaming foi iniciada
com
format="Arrow". Usá-lo com outros formatos gerará um erro.Protocolo de iterador
for:
Protocolo de gerenciador de contexto
classe chdb.state.sqlitelike.Cursor
object
close
Este método é idempotente — é seguro chamá-lo várias vezes.
O cursor também é fechado automaticamente quando a conexão é encerrada.
column_names
Exemplos
column_types()- Obter informações sobre tipos de colunadescription- descrição de coluna da DB-API 2.0
column_types
Exemplos
column_names()- Obtém informações sobre os nomes das colunasdescription- descrição da coluna da DB-API 2.0
commit
O ClickHouse normalmente confirma as operações automaticamente, portanto commits explícitos
geralmente não são necessários. Este método é fornecido para compatibilidade
com o fluxo de trabalho padrão da DB-API 2.0.
property description : list
Isso segue a especificação DB-API 2.0 para cursor.description.
Apenas os dois primeiros elementos (name e type_code) contêm dados
relevantes nesta implementação.
column_names()- Obtenha apenas os nomes das colunascolumn_types()- Obtenha apenas os tipos das colunas
execute
fetch. Ele lida com a interpretação dos dados de resultado e
com a conversão automática de tipos de dados do ClickHouse.
Sintaxe
Exceções
Este método segue as especificações da DB-API 2.0 para
cursor.execute().
Após a execução, use fetchone(), fetchmany() ou fetchall() para
recuperar os resultados.O método converte automaticamente os tipos de dados do ClickHouse para os tipos
apropriados do Python:
- Tipos Int/UInt → int
- Tipos Float → float
- String/FixedString → str
- DateTime → datetime.datetime
- Date → datetime.date
- Bool → bool
fetchone()- Retorna uma única linhafetchmany()- Retorna várias linhasfetchall()- Retorna todas as linhas restantes
fetchall
Exemplos
fetchone()- Obtém uma única linhafetchmany()- Obtém várias linhas em lotes
fetchmany
Retorno
Este método segue as especificações da DB-API 2.0. Retornará menos
de ‘size’ linhas se o conjunto de resultados estiver esgotado.
fetchone()- Retorna uma única linhafetchall()- Retorna todas as linhas restantes
fetchone
Este método segue as especificações da DB-API 2.0. Os valores das colunas são
convertidos automaticamente para os tipos apropriados do Python com base nos
tipos de coluna do ClickHouse.
fetchmany()- Busca várias linhasfetchall()- Busca todas as linhas restantes
chdb.state.sqlitelike
Retorna
Gera
Esta função requer que pyarrow e pandas estejam instalados.
Instale-os com:
pip install pyarrow pandaschdb.state.sqlitelike.to_df
Retorna:
Gera
Esta função usa múltiplas threads na conversão de Arrow para Pandas
para melhorar o desempenho em grandes conjuntos de dados.
to_arrowTable()- Para conversão para o formato tabela PyArrow
Integração com DataFrame
classe chdb.dataframe.Table
Interface da API de Banco de Dados (DBAPI) 2.0
- Conexões: Gerenciamento de conexões com bancos de dados por meio de strings de conexão
- Cursores: Execução de consultas e recuperação de resultados
- Sistema de Tipos: Constantes de tipo e conversores compatíveis com a DB-API 2.0
- Tratamento de Erros: Hierarquia padrão de exceções de banco de dados
- Segurança de Threads: Segurança de threads de nível 1 (threads podem compartilhar módulos, mas não conexões)
Funções principais
chdb.dbapi.connect
Exceções
chdb.dbapi.get_client_info()
Construtores de tipos
chdb.dbapi.Binary(x)
Retorno
Classe de conexão
class chdb.dbapi.connections.Connection(path=None)
object
Conexão compatível com DB-API 2.0 para o chDB.
Esta classe fornece uma interface DB-API padrão para se conectar a bancos de dados chDB e interagir com eles. Ela oferece suporte tanto a bancos de dados em memória quanto a bancos de dados em arquivo.
A conexão gerencia o engine chDB subjacente e fornece métodos para
executar consultas, gerenciar transações (no-op para ClickHouse) e criar cursores.
Variáveis
Exemplos
O ClickHouse não oferece suporte a transações tradicionais, portanto as operações commit() e rollback()
não têm efeito, mas são fornecidas para conformidade com a DB-API.
close
commit
Esta operação é um no-op no chDB/ClickHouse, pois ele não oferece suporte a
transações tradicionais. É fornecida para conformidade com a DB-API 2.0.
cursor
Retorna
Gera
Exemplo
escape
Retorno
Exemplo
escape_string
Retorna
property open
query
Retorna
Gera
Exemplo
property resp
Esta propriedade é atualizada sempre que
query() é chamada diretamente.
Ela não reflete consultas executadas por meio de cursores.rollback
Esta é uma operação sem efeito para chDB/ClickHouse, pois não há suporte a
transações tradicionais. Ela é fornecida para conformidade com a DB-API 2.0.
Classe Cursor
classe chdb.dbapi.cursors.Cursor
object
Cursor DB-API 2.0 para executar consultas e obter resultados.
O cursor fornece métodos para executar instruções SQL, gerenciar resultados de consultas
e navegar por conjuntos de resultados. Ele oferece suporte à vinculação de parâmetros, operações em massa
e segue as especificações da DB-API 2.0.
Não crie instâncias de Cursor diretamente. Em vez disso, use Connection.cursor().
Exemplos
Consulte DB-API 2.0 Cursor Objects
para ver os detalhes completos da especificação.
callproc
Retorno
chDB/ClickHouse não oferece suporte a procedimentos armazenados no sentido tradicional.
Este método é fornecido para conformidade com a DB-API 2.0, mas não realiza
nenhuma operação de fato. Use execute() para todas as operações SQL.
close
execute
Retorno
Estilos de parâmetro
Exemplos
executemany(query, args)
Retorno
Exemplos
Este método melhora o desempenho de operações de INSERT e UPDATE com várias linhas
ao otimizar o processo de execução da consulta.
fetchall()
Gera
Exemplo
fetchmany
Retorno
Exceções
Exemplo
fetchone
Gera
Exemplo
max_stmt_length = 1024000
executemany().
O valor padrão é 1024000.
mogrify
Retorno
Exemplo
Este método segue a extensão da DB-API 2.0 usada pelo Psycopg.
nextset
O chDB/ClickHouse não oferece suporte a múltiplos conjuntos de resultados em uma única consulta.
Este método é fornecido para conformidade com a DB-API 2.0, mas sempre retorna None.
setinputsizes
Este método não faz nada, mas é exigido pela especificação DB-API 2.0.
O chDB ajusta automaticamente o tamanho dos parâmetros internamente.
setoutputsizes
Este método não faz nada, mas é exigido pela especificação DB-API 2.0.
O chDB gerencia automaticamente, de forma interna, o dimensionamento da saída.
Classes de erro
Essas classes de exceção estão em conformidade com a especificação Python DB API 2.0
e fornecem um tratamento de erros consistente em diferentes operações de banco de dados.
- Especificação da API de Banco de Dados Python v2.0
chdb.dbapi.connections- Gerenciamento de conexões com o banco de dadoschdb.dbapi.cursors- Operações de cursor do banco de dados
exceção chdb.dbapi.err.DataError
DatabaseError
Exceção gerada para erros decorrentes de problemas nos dados processados.
Esta exceção é gerada quando operações de banco de dados falham devido a problemas com
os dados em processamento, como:
- Operações de divisão por zero
- Valores numéricos fora do intervalo
- Valores de data/hora inválidos
- Erros de truncamento de string
- Falhas na conversão de tipo
- Formato de dados inválido para o tipo da coluna
Exemplos
exceção chdb.dbapi.err.DatabaseError
Error
Exceção lançada para erros relacionados ao banco de dados.
Esta é a classe base para todos os erros relacionados ao banco de dados. Ela engloba
todos os erros que ocorrem durante operações no banco de dados e que estão relacionados ao
próprio banco de dados, e não à interface.
Cenários comuns incluem:
- Erros na execução de SQL
- Problemas de conectividade com o banco de dados
- Problemas relacionados a transações
- Violações de restrições específicas do banco de dados
Ela serve como classe pai para tipos mais específicos de erro de banco de dados,
como
DataError, OperationalError, etc.exceção chdb.dbapi.err.Error
StandardError
Exceção que é a classe base de todas as outras exceções de erro (exceto Warning).
Esta é a classe base de todas as exceções de erro no chdb, excluindo avisos.
Ela serve como classe pai para todas as condições de erro de banco de dados que impedem
a conclusão bem-sucedida das operações.
Esta hierarquia de exceções segue a especificação Python DB API 2.0.
Warning- Para avisos não fatais que não impedem a conclusão da operação
exceção chdb.dbapi.err.IntegrityError
DatabaseError
Exceção lançada quando a integridade relacional do banco de dados é comprometida.
Essa exceção é lançada quando operações no banco de dados violam restrições de integridade,
incluindo:
- Violações de restrição de chave estrangeira
- Violações de chave primária ou de restrição de unicidade (chaves duplicadas)
- Violações de restrição CHECK
- Violações de restrição NOT NULL
- Violações de integridade referencial
Exemplos
exceção chdb.dbapi.err.InterfaceError
Error
Exceção gerada para erros relacionados à interface do banco de dados, e não ao próprio banco de dados.
Essa exceção é gerada quando há problemas na implementação da interface
do banco de dados, como:
- Parâmetros de conexão inválidos
- Uso incorreto da API (chamada de métodos em conexões fechadas)
- Erros de protocolo no nível da interface
- Falhas na importação ou na inicialização do módulo
Esses erros normalmente são erros de programação ou problemas de configuração
que podem ser resolvidos corrigindo o código do cliente ou a configuração.
exceção chdb.dbapi.err.InternalError
DatabaseError
Exceção gerada quando o banco de dados encontra um erro interno.
Esta exceção é gerada quando o sistema de banco de dados encontra
erros internos que não são causados pela aplicação, como:
- Estado inválido do cursor (o cursor não é mais válido)
- Inconsistências no estado da transação (a transação está fora de sincronia)
- Problemas de corrupção no banco de dados
- Corrupção da estrutura interna de dados
- Erros de banco de dados em nível de sistema
Esses erros geralmente estão fora do controle da aplicação
e podem exigir a reinicialização do banco de dados ou operações de reparo.
exceção chdb.dbapi.err.NotSupportedError
DatabaseError
Exceção gerada quando um método ou a API do banco de dados não tem suporte.
Essa exceção é gerada quando a aplicação tenta usar recursos do banco de dados
ou métodos da API que não têm suporte na configuração ou versão atual do banco de dados,
como:
- Solicitar
rollback()em conexões sem suporte a transações - Usar recursos SQL avançados sem suporte na versão do banco de dados
- Chamar métodos não implementados pelo driver atual
- Tentar usar recursos do banco de dados desabilitados
Exemplos
Consulte a documentação do banco de dados e os recursos do driver para evitar
esses erros. Considere fallbacks apropriados sempre que possível.
exceção chdb.dbapi.err.OperationalError
DatabaseError
Exceção gerada para erros relacionados à operação do banco de dados.
Esta exceção é gerada para erros que ocorrem durante a operação do banco de dados
e que não estão necessariamente sob o controle do programador, incluindo:
- Desconexão inesperada do banco de dados
- Servidor do banco de dados não encontrado ou inacessível
- Falhas no processamento de transações
- Erros de alocação de memória durante o processamento
- Esgotamento de espaço em disco ou de recursos
- Erros internos do servidor do banco de dados
- Falhas de autenticação ou autorização
Esses erros geralmente são transitórios e podem ser resolvidos tentando novamente
a operação ou ao corrigir problemas no nível do sistema.
exceção chdb.dbapi.err.ProgrammingError
DatabaseError
Exceção gerada para erros de programação em operações de banco de dados.
Essa exceção é gerada quando há erros de programação no
uso do banco de dados pelo aplicativo, incluindo:
- Tabela ou coluna não encontrada
- A tabela ou o índice já existe no momento da criação
- Erros de sintaxe SQL em instruções
- Número incorreto de parâmetros especificados em instruções preparadas
- Operações SQL inválidas (por exemplo, DROP em objetos inexistentes)
- Uso incorreto de métodos da API de banco de dados
Exemplos
exceção chdb.dbapi.err.StandardError
Exception
Exceção relacionada a operações com o chdb.
Esta é a classe base para todas as exceções relacionadas ao chdb. Ela herda da
classe Exception interna do Python e serve como raiz da hierarquia de
exceções para operações de banco de dados.
Esta classe de exceção segue a especificação Python DB API 2.0
para o tratamento de exceções de banco de dados.
exceção chdb.dbapi.err.Warning
StandardError
Exceção gerada para avisos importantes, como truncamento de dados durante a inserção etc.
Esta exceção é gerada quando a operação no banco de dados é concluída, mas com
avisos importantes que devem ser levados ao conhecimento da aplicação.
Cenários comuns incluem:
- Truncamento de dados durante a inserção
- Perda de precisão em conversões numéricas
- Avisos de conversão de conjunto de caracteres
Isso segue a especificação da Python DB API 2.0 para exceções de aviso.
Constantes do módulo
chdb.dbapi.apilevel = '2.0'
encoding ou
errors for especificado, o objeto deverá expor um buffer de dados
que será decodificado usando a codificação fornecida e o manipulador de erros.
Caso contrário, retorna o resultado de object._\_str_\_() (se definido)
ou repr(object).
encodingusa ‘utf-8’ por padrão.errorsusa ‘strict’ por padrão.
chdb.dbapi.threadsafety = 1
chdb.dbapi.paramstyle = 'format'
Constantes de tipo
chdb.dbapi.STRING = frozenset({247, 253, 254})
frozenset para dar suporte à semântica de comparação de tipos da DB-API 2.0.
Ela permite uma verificação de tipos flexível, em que itens individuais podem ser comparados
com o conjunto usando operadores de igualdade e desigualdade.
Isso é usado para constantes de tipo como STRING, BINARY, NUMBER etc., permitindo
comparações como “field_type == STRING”, em que field_type é um único valor de tipo.
Exemplos
chdb.dbapi.BINARY = frozenset({249, 250, 251, 252})
frozenset estendido para comparação de tipos no DB-API 2.0.
Esta classe estende frozenset para dar suporte à semântica de comparação de tipos do DB-API 2.0.
Ela permite uma verificação de tipos flexível, em que itens individuais podem ser comparados
com o conjunto usando operadores de igualdade e de desigualdade.
Isso é usado para constantes de tipo como STRING, BINARY, NUMBER etc., permitindo
comparações como “field_type == STRING”, em que field_type é um único valor de tipo.
Exemplos
chdb.dbapi.NUMBER = frozenset({0, 1, 3, 4, 5, 8, 9, 13})
frozenset estendido para comparação de tipos na DB-API 2.0.
Esta classe estende frozenset para oferecer suporte à semântica de comparação de tipos da DB-API 2.0.
Ela permite uma verificação de tipos flexível, em que itens individuais podem ser comparados
com o conjunto usando operadores de igualdade e desigualdade.
Isso é usado para constantes de tipo como STRING, BINARY, NUMBER etc., permitindo
comparações como “field_type == STRING”, em que field_type é um único valor de tipo.
Exemplos
chdb.dbapi.DATE = frozenset({10, 14})
frozenset estendido para comparação de tipos na DB-API 2.0.
Esta classe estende frozenset para dar suporte à semântica de comparação de tipos da DB-API 2.0.
Ela permite uma verificação de tipos mais flexível, em que itens individuais podem ser comparados
com o conjunto usando operadores de igualdade e de desigualdade.
Isso é usado para constantes de tipo como STRING, BINARY, NUMBER etc., permitindo
comparações como “field_type == STRING”, em que field_type é um único valor de tipo.
Exemplos
chdb.dbapi.TIME = frozenset({11})
frozenset para oferecer suporte à semântica de comparação de tipos da DB-API 2.0.
Ela permite uma verificação de tipos flexível, em que itens individuais podem ser comparados
com o conjunto usando operadores de igualdade e de desigualdade.
Isso é usado para constantes de tipo como STRING, BINARY, NUMBER etc., para permitir
comparações como “field_type == STRING”, em que field_type é um único valor de tipo.
Exemplos
chdb.dbapi.TIMESTAMP = frozenset({7, 12})
frozenset estendido para comparação de tipos da DB-API 2.0.
Esta classe estende frozenset para dar suporte à semântica de comparação de tipos da DB-API 2.0.
Ela permite uma verificação de tipos flexível, na qual itens individuais podem ser comparados
com o conjunto usando operadores de igualdade e desigualdade.
Isso é usado para constantes de tipo como STRING, BINARY, NUMBER etc., permitindo
comparações como “field_type == STRING”, em que field_type é um único valor de tipo.
Exemplos
chdb.dbapi.DATETIME = frozenset({7, 12})
frozenset estendido para comparação de tipos na DB-API 2.0.
Esta classe estende frozenset para dar suporte à semântica de comparação de tipos da DB-API 2.0.
Ela permite uma verificação de tipos flexível, em que itens individuais podem ser comparados
com o conjunto usando operadores de igualdade e de desigualdade.
Isso é usado para constantes de tipo como STRING, BINARY, NUMBER etc., permitindo
comparações como “field_type == STRING”, em que field_type é um único valor de tipo.
Exemplos
chdb.dbapi.ROWID = frozenset({})
frozenset estendido para comparação de tipos da DB-API 2.0.
Esta classe estende frozenset para oferecer suporte à semântica de comparação de tipos da DB-API 2.0.
Ela permite uma verificação de tipos flexível, na qual itens individuais podem ser comparados
com o conjunto usando operadores de igualdade e desigualdade.
Isso é usado para constantes de tipo como STRING, BINARY, NUMBER etc., permitindo
comparações como “field_type == STRING”, em que field_type é um único valor de tipo.
Exemplos
- Gerenciamento de conexões: Sempre feche conexões e cursores ao concluir
- Gerenciadores de contexto: Use instruções
withpara limpeza automática - Processamento em lote: Use
fetchmany()para grandes conjuntos de resultados - Tratamento de erros: Envolva operações de banco de dados em blocos try-except
- Vinculação de parâmetros: Use consultas parametrizadas sempre que possível
- Gerenciamento de memória: Evite
fetchall()para conjuntos de dados muito grandes
- A interface DB-API 2.0 do chDB é compatível com a maioria das ferramentas de banco de dados para Python
- A interface oferece segurança de thread de Nível 1 (threads podem compartilhar módulos, mas não conexões)
- As strings de conexão oferecem suporte aos mesmos parâmetros que as sessões do chDB
- Todas as exceções padrão da DB-API 2.0 são suportadas
Funções Definidas pelo Usuário (UDF)
chdb.udf.chdb_udf
Observações
- A função deve ser sem estado. Apenas UDFs são compatíveis, não UDAFs.
- O tipo de retorno padrão é String. O tipo de retorno deve ser um dos tipos de dados do ClickHouse.
- A função deve aceitar argumentos do tipo String. Todos os argumentos são strings.
- A função será chamada para cada linha de entrada.
- A função deve ser uma função Python pura. Importe todos os módulos usados NA FUNÇÃO.
- O interpretador Python usado é o mesmo utilizado para executar o script.
chdb.udf.generate_udf
- Um script executável em Python que processa os dados de entrada
- Um arquivo de configuração XML que registra a UDF no ClickHouse
Esta função normalmente é chamada pelo decorador @chdb_udf e não deve
ser invocada diretamente pelos usuários.
Utilitários
chdb.utils.convert_to_columnar
Retorna
Exemplo
chdb.utils.flatten_dict
Retorno
Exemplo
chdb.utils.infer_data_type
Retorna
- Se todos os valores da lista forem None, a função retorna “string”.
- Se algum valor da lista for uma string, a função retorna imediatamente “string”.
- A função assume que valores numéricos podem ser representados como inteiros, decimais ou números de ponto flutuante com base em seu intervalo e precisão.
chdb.utils.infer_data_types
Retorna
Classes Abstratas Base
class chdb.rwabc.PyReader(data: Any)`
ABC
abstractmethod read
Retorno
class chdb.rwabc.PyWriter
ABC
abstractmethod finalize
abstractmethod write
Tratamento de exceções
class chdb.ChdbError
Exception
Classe base de exceção para erros relacionados ao chDB.
Essa exceção é gerada quando a execução de uma consulta no chDB falha ou encontra
um erro. Ela herda da classe Exception padrão do Python e
fornece informações de erro do mecanismo subjacente do ClickHouse.
A mensagem da exceção normalmente contém informações detalhadas sobre o erro
do ClickHouse, incluindo erros de sintaxe, incompatibilidades de tipo, ausência de
tabelas/colunas e outros problemas na execução de consultas.
Variáveis
Exemplos
Esta exceção é gerada automaticamente por chdb.query() e funções
relacionadas quando o mecanismo do ClickHouse subjacente reporta um erro.
Você deve capturar essa exceção ao lidar com consultas que possam falhar
para fornecer o tratamento de erro adequado no seu aplicativo.
Informações sobre a versão
chdb.chdb_version = ('3', '6', '0')
iterable for especificado, a tupla será inicializada a partir dos itens de iterable.
Se o argumento for uma tupla, o valor retornado será o mesmo objeto.
chdb.engine_version = '25.5.2.1'
- encoding usa ‘utf-8’ por padrão.
- errors usa ‘strict’ por padrão.
chdb.__version__ = '3.6.0'
- encoding usa ‘utf-8’ por padrão.
- errors usa ‘strict’ por padrão.