Pular para o conteúdo

SQL direto

É a razão de ser do basedb: suas tabelas são tabelas de verdade. Qualquer cliente PostgreSQL as lê pelo nome.

ObjetoNome físicoExemplo
Baseum schema b_<tenant>_<nom>b_t4z56fq_ventes
Ambiente de homologaçãoo schema com sufixob_t4z56fq_ventes_recette
Tabelaseu nome slugificadoopportunites
Camposeu nome slugificadoecheance
Relação<table cible>_idclients_id
Visão SQLseu nome técnico, no schema da basefactures_a_encaisser

A página Documentação de API e MCP de cada base informa todos eles, e \d no psql mostra as descrições (COMMENT ON).

O + da barra de abas, ou o menu ⋯ da base → Consulta SQL: um editor com realce de sintaxe e autocompletar, cujo resultado aparece na mesma grade das suas tabelas.

Uma consulta salva e duas visões SQL organizadas entre as tabelas

  • Cada pessoa lê ali com as próprias permissões: o nível Gerenciamento tem a base inteira, inclusive escritas; os outros membros escrevem SQL somente para leitura, em que uma tabela fechada não existe e um campo oculto desaparece.
  • Uma consulta pode ser salva abaixo das tabelas — para si, para toda a base ou para grupos — e se torna, se você quiser, uma visão SQL: uma visão PostgreSQL de verdade, organizada entre as tabelas e legível pelo psql.

Tudo está detalhado em Consultas e visões SQL.

Com o docker-compose.yml fornecido, o PostgreSQL é publicado em 127.0.0.1:5432:

Fenêtre de terminal
psql "postgres://basedb:<POSTGRES_PASSWORD>@localhost:5432/basedb"
SET search_path = b_t4z56fq_ventes;
SELECT o.nom, o.montant, c.nom AS client
FROM opportunites o
JOIN clients c ON c._id = o.clients_id
WHERE o.statut = 'gagne';

Essa conta é a proprietária da base: ela lê tudo, e as permissões do basedb não se aplicam a ela. Para uma ferramenta de BI, crie em vez disso um papel separado com seus próprios GRANT. Se uma tabela tiver uma regra de linhas, o PostgreSQL aplica a ela a segurança por linha: um papel desse tipo não vê nenhuma linha nela sem o atributo BYPASSRLS ou uma política própria.

É permitido. As restrições (seleções únicas, relações, URLs, obrigatório) são mantidas pelo PostgreSQL e recusam um valor inválido, como na interface. E a escrita é registrada no histórico: o histórico a exibe como “Sessão SQL direta”, com a sessão que a fez, e ela pode ser desfeita como as outras.

O basedb é um software livre da Eodia, estúdio de software nativo em IA.