Este driver está em desenvolvimento ativo. Alguns recursos do ODBC talvez ainda não estejam totalmente implementados. A versão atual
se concentra em fornecer conectividade essencial e a funcionalidade principal do ODBC, com recursos adicionais planejados para
lançamentos futuros.Seu feedback é extremamente valioso e ajuda a orientar a priorização de novos recursos e melhorias. Se você encontrar
limitações, funcionalidades ausentes ou comportamento inesperado, compartilhe suas observações ou solicitações de recursos por
meio do rastreador de issues em
https://github.com/ClickHouse/clickhouse-odbc/issues
Instalação no Windows
Teste
$reader.GetValue(0), ele deverá mostrar a versão do servidor
ClickHouse.
Parâmetros de configuração
Url: Especifica o endpoint HTTP(S) completo do servidor ClickHouse. Isso inclui o protocolo, host, porta e caminho opcional.Username: O nome de usuário usado para autenticação com o servidor ClickHouse.Password: A senha associada ao nome de usuário especificado. Se não for fornecida, o driver se conecta sem autenticação por senha.Database: O banco de dados padrão a ser usado na conexão.Timeout: O tempo máximo (em segundos) que o driver espera por uma resposta do servidor antes de abortar a solicitação.ClientName: Um identificador personalizado enviado ao servidor ClickHouse como parte dos metadados do cliente. Útil para rastreamento ou distinguir o tráfego de diferentes aplicações. Esse parâmetro fará parte do cabeçalho User-Agent nas solicitações HTTP produzidas pelo driver.Compression: Habilita ou desabilita a compressão HTTP para payloads de solicitação e resposta. Quando habilitada, ela pode reduzir o uso de largura de banda e melhorar o desempenho para grandes conjuntos de resultados.SqlCompatibilitySettings: Habilita configurações de consulta que fazem o ClickHouse se comportar mais como um banco de dados relacional tradicional. Isso é útil quando consultas são geradas automaticamente por ferramentas de terceiros, por exemplo, o Power BI. Essas ferramentas geralmente não conhecem determinados comportamentos específicos do ClickHouse e podem produzir consultas que resultam em erros ou resultados inesperados. Consulte Configurações do ClickHouse usadas pelo parâmetro de configuração SqlCompatibilitySettings para mais detalhes.
- Um servidor ClickHouse instalado localmente em uma instância WSL
- Uma instância do ClickHouse Cloud.
Integração com o Microsoft Power BI
- ClickHouse Connector (recomendado) Usa ODBC nos bastidores, mas oferece suporte ao modo DirectQuery. Nesse modo, o Power BI gera automaticamente consultas SQL e recupera apenas os dados necessários para cada visualização ou operação de filtro.
- ODBC Connector Oferece suporte apenas ao modo Import. O Power BI executa a consulta fornecida pelo usuário (ou seleciona a tabela inteira) e importa todo o conjunto de resultados para o Power BI. As atualizações subsequentes reimportam todo o conjunto de dados.
Configurações de compatibilidade com SQL
SqlCompatibilitySettings, que habilita configurações específicas de consulta
para alinhar o comportamento do ClickHouse de forma mais próxima ao SQL padrão.
Configurações do ClickHouse habilitadas pelo parâmetro de configuração SqlCompatibilitySettings
value permite NULL, esta consulta falhará com a seguinte mensagem:
cast_keep_nullable altera o comportamento de CAST para preservar a capacidade de seus argumentos aceitarem valores nulos. Isso
aproxima o comportamento do ClickHouse ao de outros bancos de dados e ao padrão SQL para esse tipo de conversão.
prefer_column_name_to_alias
O ClickHouse permite referenciar expressões na mesma lista SELECT pelos seus aliases. Por exemplo, esta consulta evita
repetições e é mais fácil de escrever:
SELECT,
e essas consultas gerariam um erro. Os problemas ficam mais evidentes quando um alias tem o mesmo nome de uma coluna. Por exemplo:
value o avg(value) deve agregar? Por padrão, o ClickHouse prefere o alias, o que na prática transforma isso em um
agregado aninhado, algo que não é o que a maioria das ferramentas espera.
Por si só, isso raramente é um problema, mas algumas ferramentas de BI geram consultas com subconsultas que reutilizam aliases de coluna. Por
exemplo, o Power BI frequentemente gera consultas semelhantes à seguinte:
C1 podem resultar no seguinte erro:
C1 como uma coluna da
subconsulta. Para preservar um comportamento semelhante no ClickHouse e permitir que essas consultas sejam executadas sem erros, o driver ODBC
ativa prefer_column_name_to_alias.
Na maioria dos casos, ativar essas configurações não deve ser um problema. No entanto, usuários com a configuração readonly definida como 1
não podem alterar nenhuma configuração, nem mesmo em consultas SELECT. Para esses usuários, ativar SqlCompatibilitySettings resultará
em erro. A seção a seguir explica como fazer esse parâmetro de configuração funcionar para usuários somente leitura.
Como fazer as configurações de compatibilidade com SQL funcionarem para usuários somente leitura
SqlCompatibilitySettings habilitado, um usuário com
a configuração readonly definida como 1 encontrará um erro, porque o driver tenta modificar as configurações da consulta:
SELECT individuais.
Há várias maneiras de resolver isso.
Opção 1. Definir readonly como 2
Esta é a opção mais simples. Definir readonly como 2 permite alterar configurações e, ao mesmo tempo, manter o usuário em modo somente leitura.
readonly como 2 é a maneira mais fácil e recomendada de resolver esse problema. Se
isso não funcionar no seu caso, use a segunda opção.
Opção 2. Alterar as configurações do usuário para que correspondam às configurações definidas pelo driver ODBC.
Isso também é simples: atualize as configurações do usuário para que já correspondam ao que o driver ODBC tenta definir.