Como usar: Validador de Sintaxe PostgreSQL
- Escolha o dialeto do seu banco de dados (MySQL, PostgreSQL, SQL Server, SQLite, BigQuery e outros).
- Cole ou abra seu SQL. Várias instruções separadas por ponto e vírgula são aceitas.
- Os erros mostram a linha, a coluna e os tokens esperados, com o ponto com problema marcado.
- As instruções válidas são listadas com o tipo e as tabelas que elas acessam, além de alertas para padrões arriscados.
O que um validador de SQL verifica?
Um validador de SQL (ou checador de sintaxe) analisa sua query com a gramática de um banco de dados específico e informa se ela está bem formada: parênteses balanceados, palavras-chave na ordem certa, expressões válidas, vírgulas entre colunas e assim por diante. Esta ferramenta separa seu script em instruções, analisa cada uma individualmente para que você veja todas as instruções com erro de uma vez, e aponta a linha e a coluna onde a análise parou. A gramática do PostgreSQL vem selecionada por padrão.
Alertas de boas práticas
| Alerta | Por que importa |
|---|---|
UPDATE / DELETE sem WHERE | Altera todas as linhas da tabela — geralmente é um erro. |
SELECT * | Busca colunas que você talvez não precise e quebra quando colunas são adicionadas ou reordenadas. |
INSERT sem lista de colunas | Depende da ordem das colunas; adicionar uma coluna quebra a instrução. |
LIKE '%…' | Um curinga no início não consegue usar um índice comum e faz varredura na tabela. |
= NULL | Nunca é verdadeiro; use IS NULL. |
ORDER BY sem LIMIT em uma subquery, ou LIMIT sem ORDER BY | A ordem das linhas não é garantida sem uma ordenação explícita. |
Diferenças entre dialetos que causam erros
- Aspas de identificadores — MySQL e MariaDB usam crases (
`order`), PostgreSQL, SQLite e o padrão SQL usam aspas duplas, e o SQL Server usa colchetes ([order]). - Limites de linhas —
LIMIT 10no MySQL, PostgreSQL e SQLite;TOP 10ouOFFSET … FETCHno SQL Server. - Upserts —
ON DUPLICATE KEY UPDATE(MySQL) vs.ON CONFLICT … DO UPDATE(PostgreSQL, SQLite) vs.MERGE(SQL Server, Snowflake, BigQuery). - Casts — o PostgreSQL aceita
valor::int; a maioria dos outros precisa deCAST(valor AS INT).
Erros de sintaxe comuns no PostgreSQL
O PostgreSQL exibe “syntax error at or near …” com o token onde a análise parou. Causas típicas: crases copiadas do MySQL (use aspas duplas), aspas duplas em valores de texto (use aspas simples, já que aspas duplas indicam identificadores), LIMIT x, y (no Postgres use LIMIT y OFFSET x) e uma vírgula faltando em uma lista de colunas.
Deixe a query mais legível com o formatador de SQL, gere instruções a partir de dados com CSV para SQL ou JSON para SQL, e modele tabelas com o gerador de CREATE TABLE.
Também pesquisado como: validador de query postgres, verificar sintaxe postgresql, erro de sintaxe psql, linter postgres, validar sql postgres, checador de sintaxe sql, validador sql online.
Ferramentas que combinam com: Validador de Sintaxe PostgreSQL
- Validador SQL — Cole uma query ou um script inteiro para checar a sintaxe conforme a gramática do seu banco de dados.
- Validador de Sintaxe MySQL — Valide suas consultas MySQL antes de executá-las.
- Excel para JSON — Abra uma pasta de trabalho .xlsx ou cole células direto do Excel ou do Google Sheets e receba um JSON limpo.
- JSON para Excel — Transforme um array JSON em uma planilha Excel de verdade.
Perguntas frequentes
Meu SQL é enviado para um servidor ou banco de dados?
Um resultado válido significa que a query vai rodar?
Por que o erro aponta para depois do meu equívoco?
WHER, costuma ser lida como um alias, então o erro aparece na palavra seguinte. Verifique também o token logo antes da posição marcada.