Pular para conteúdo

postgresql

fonte

lê dados de bancos sql relacionais: postgresql, mysql, sql server e oracle. usa a conexão configurada no gerenciador de conexões e executa uma query ou lê uma tabela inteira.


casos de uso

  • extrair tabelas operacionais de um sistema legado
  • executar queries analíticas complexas como fonte de dados
  • sincronizar dados entre bancos de diferentes tecnologias

bancos suportados

banco driver observações
postgresql asyncpg recomendado
mysql aiomysql
sql server pyodbc requer odbc driver
oracle cx_oracle requer oracle client

configuração

campo tipo obrigatório descrição
credential_id uuid sim id da conexão criada em conexões
query string sim* sql a executar · suporta {{variavel}}
table string sim* nome da tabela (alternativa ao query)
schema string não schema da tabela (padrão: public no postgres)

use query ou* table, não ambos.


exemplos

leitura de tabela inteira

{
  "credential_id": "uuid-da-conexao",
  "table": "clientes",
  "schema": "vendas"
}

equivale a SELECT * FROM vendas.clientes.

query personalizada

{
  "credential_id": "uuid-da-conexao",
  "query": "SELECT id, nome, email, created_at FROM clientes WHERE created_at >= '{{data_inicio}}' ORDER BY created_at"
}

query com join

{
  "credential_id": "uuid-da-conexao",
  "query": "SELECT p.id, p.nome, c.razao_social FROM pedidos p JOIN clientes c ON c.id = p.cliente_id WHERE p.status = 'pendente'"
}

variáveis de pipeline em queries

parâmetros de data, filtros e qualquer valor dinâmico podem ser injetados via {{variavel}}:

SELECT *
FROM vendas
WHERE data_venda BETWEEN '{{data_inicio}}' AND '{{data_fim}}'
  AND filial_id = {{filial_id}}

sql injection

as variáveis de pipeline são substituídas por interpolação de string — não por parâmetros preparados. use apenas variáveis confiáveis (valores do seu próprio pipeline). nunca exponha input de usuário final diretamente em queries.


configurando a conexão

antes de usar o conector, crie a conexão em configurações → conexões:

campo descrição
tipo postgres, mysql, mssql, oracle
host endereço do servidor
port porta (padrão postgres: 5432)
database nome do banco
credencial usuário e senha no vault

performance

  • para tabelas grandes, prefira query com filtros a table (evita varrer toda a tabela)
  • adicione LIMIT na query ao testar no builder
  • índices na coluna de filtro de data reduzem drasticamente o tempo de extração