Como usar: Validador de Sintaxe MySQL
- 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 também funcionam.
- Os erros mostram a linha, a coluna e os tokens esperados, com o ponto problemático marcado.
- As instruções válidas são listadas com o tipo e as tabelas que usam, além de avisos para padrões arriscados.
O que um validador de SQL verifica?
Um validador de SQL (ou verificador de sintaxe) analisa sua consulta 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 divide seu script em instruções, analisa cada uma separadamente 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 MySQL é selecionada por padrão.
Avisos de boas práticas
| Aviso | 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 acaba varrendo a tabela. |
= NULL | Nunca é verdadeiro; use IS NULL. |
ORDER BY sem LIMIT em uma subconsulta, 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 em identificadores — MySQL e MariaDB usam crases (
`order`), PostgreSQL, SQLite e o padrão SQL usam aspas duplas, SQL Server usa colchetes ([order]). - Limite 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). - Conversões — o PostgreSQL aceita
valor::int; a maioria dos outros precisa deCAST(valor AS INT).
Erros de sintaxe comuns no MySQL
A mensagem nativa do MySQL, “You have an error in your SQL syntax… near '…' at line 1”, mostra o texto a partir do ponto onde a análise falhou. As causas mais frequentes são palavras reservadas usadas como nomes (order, group, key — envolva-as em crases), uma vírgula sobrando antes de FROM, aspas duplas para identificadores (o MySQL trata como strings, a menos que ANSI_QUOTES esteja ativado) e uma vírgula faltando entre colunas.
Deixe a consulta 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: verificar sintaxe mysql, validar query mysql, erro de sintaxe mysql, linter mysql, validador sql online, checar sintaxe mariadb.
Ferramentas que combinam com: Validador de Sintaxe MySQL
- 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 PostgreSQL — Valide queries PostgreSQL direto no seu navegador.
- 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 consulta vai rodar?
Por que o erro aponta para depois do meu equívoco?
WHER, muitas vezes é lida como um alias, então o erro aparece na palavra seguinte. Verifique também o token logo antes da posição marcada.