logo
GeekFormat

Conversor de SQL

O conversor de SQL online do GeekFormat transforma em um clique instruções SQL INSERT e scripts CREATE TABLE em JSON, CSV, TSV, XML, YAML, tabelas HTML, tabelas Markdown, JSON Lines e muitos outros formatos. Suporta várias instruções INSERT e a análise em lote de tuplas multivalor, reconhece automaticamente números, strings, NULL, booleanos e literais hexadecimais, e é compatível com os estilos de aspas de identificador do MySQL, PostgreSQL, SQLite e SQL Server. Os dados de várias tabelas podem ser exportados separadamente ou combinados. Também é possível reconstruir instruções INSERT e alternar entre dialetos. O processamento é totalmente local no navegador, nenhum dado sai do dispositivo.

Sugestões Relacionadas

Sobre a conversão SQL: transformar scripts SQL em JSON/CSV/XML e outros formatos

A conversão SQL (SQL Conversion) consiste em extrair dados de um script SQL e reorganizá-los em outros formatos de dados como JSON, CSV, XML, YAML, HTML ou Markdown. SQL (Structured Query Language, linguagem de consulta estruturada) é a linguagem de consulta padrão dos bancos de dados relacionais. As ferramentas de exportação de banco de dados (mysqldump, pg_dump) geralmente produzem os dados na forma de instruções INSERT dentro de um script SQL. Esse formato, embora prático para importação em bancos de dados, é incômodo para leitura por programas, análise de dados ou intercâmbio entre sistemas, daí a necessidade de convertê-lo para formatos mais universais.

Os scripts comuns de exportação de dados SQL contêm dois tipos de instruções: CREATE TABLE define a estrutura da tabela (nomes de colunas, tipos de dados, restrições), e INSERT INTO ... VALUES (...) insere os dados propriamente ditos. Esta ferramenta analisa ambos os tipos de instruções: extrai as definições de colunas e as informações de tipo do CREATE TABLE, e as linhas de dados reais do INSERT, e depois reorganiza a saída no formato escolhido pelo usuário. Todo o processo de análise é realizado localmente no navegador, sem depender de nenhum serviço backend.

Por que é necessário converter SQL em outros formatos? SQL, embora universal, é pouco prático nos seguintes cenários: primeiro, um programa frontend lê JSON muito mais facilmente do que SQL, sem precisar integrar um analisador SQL; segundo, planilhas como Excel ou Google Sheets suportam nativamente CSV, não SQL; terceiro, YAML e Markdown são mais legíveis do que SQL em cenários de configuração e documentação; quarto, o intercâmbio de dados entre sistemas costuma empregar XML ou JSON como formato neutro. Uma vez convertido para esses formatos universais, os dados podem ser consumidos diretamente por mais ferramentas e linguagens.

O analisador SQL desta ferramenta é escrito à mão e se concentra nas instruções INSERT e CREATE TABLE. Para INSERT, suporta tanto tuplas de valor único (INSERT INTO t (a,b) VALUES (1,2)) quanto tuplas multivalor (INSERT INTO t (a,b) VALUES (1,2), (3,4), (5,6)), mapeando automaticamente os dados aos nomes das colunas. Para CREATE TABLE, analisa definições de colunas, tipos de dados (VARCHAR(255), INT, DECIMAL(10,2) etc., com comprimento entre parênteses), e restrições e cláusulas como NOT NULL, PRIMARY KEY, IF NOT EXISTS, tratando corretamente os parênteses aninhados para evitar divisões errôneas.

O reconhecimento de tipos é essencial para a conversão SQL. A ferramenta determina automaticamente o tipo a partir da forma literal do valor: strings com aspas simples ou duplas são strings; NULL (sem distinguir maiúsculas/minúsculas) é o valor nulo; TRUE/FALSE são booleanos; 0x..., X'...', B'...' são literais hexadecimais; e números puros (com sinal, separador decimal, notação científica) são números. Esse reconhecimento automático de tipos garante que JSON, CSV e outros formatos preservem a semântica dos dados originais (por exemplo o número 1 e não a string "1"), para que os programas posteriores processem os valores corretamente.

As diferenças nos estilos de aspas de identificador entre dialetos são uma armadilha comum na análise SQL. O MySQL usa por padrão a crase (`) para envolver identificadores (nomes de tabelas e colunas), o PostgreSQL as aspas duplas ("), o SQL Server/T-SQL os colchetes ([]), e o SQL padrão também aspas duplas. A função unquoteIdentifier desta ferramenta reconhece e remove automaticamente essas aspas, tratando também os escapes internos (por exemplo `` → `, "" → "). No modo de reconstrução SQL, INSERT pode ser regenerado com o estilo de aspas do dialeto destino escolhido.

O escape de strings SQL é outro ponto técnico essencial. O padrão SQL estabelece que as aspas simples dentro de uma string são escapadas por duplicação ('It''s' representa It's). O MySQL admite ainda o escape com barra invertida (\n, \t, \', \", \\, \0, \Z). O analisador de strings desta ferramenta trata ambos os mecanismos de escape e restaura corretamente o conteúdo original. Na conversão para CSV, os campos com vírgula, aspa ou quebra de linha são reescapados em conformidade com RFC 4180; na conversão para XML/HTML, os caracteres especiais &, <, >, ", ' são escapados.

O processamento puramente frontend é um princípio de design fundamental desta ferramenta. Todas as etapas de análise SQL e conversão de dados são executadas no motor JavaScript do navegador, sem enviar nenhum dado a um servidor. Isso significa que mesmo se o script SQL contiver informações pessoais, dados comerciais sensíveis ou a estrutura interna de um banco de dados, nada vaza para o exterior. Essa abordagem é especialmente adequada para exports de bancos de dados de produção, sem preocupações de conformidade de dados. Ao mesmo tempo, o processamento frontend elimina a latência de rede; a velocidade de conversão é limitada apenas pela CPU e pela memória do dispositivo.

Comparado às ferramentas tradicionais de conversão SQL em linha de comando (sql2csv, sqlparser), esta ferramenta oferece várias vantagens: não requer instalação nem configuração de ambiente, é usada diretamente da página web; interface visual com pré-visualização em tempo real do resultado; alternância com um clique entre vários formatos de saída; dados de exemplo e documentação integrados; design responsivo móvel utilizável de qualquer lugar. Em contrapartida, a ferramenta é focada na extração de dados e não trata diferenças complexas entre dialetos (operadores JSONB do PostgreSQL, ON DUPLICATE KEY UPDATE do MySQL) nem recursos avançados (procedimentos armazenados, funções, gatilhos). Para esse tipo de necessidade, use ferramentas nativas de banco de dados ou plataformas ETL especializadas.

Ao usar a ferramenta de conversão SQL, convém observar algumas boas práticas: primeiro, antes de converter, verificar se o script SQL contém dados completos (instruções INSERT) e não apenas consultas (SELECT), pois SELECT não é analisado; segundo, para scripts SQL com várias tabelas, ativar «Saída separada por tabelas» para preservar as informações de estrutura; terceiro, para SQL com caracteres chineses, ativar «Incluir BOM» na saída CSV para que o Excel reconheça a codificação; quarto, para dumps SQL grandes, desativar «saída formatada» para reduzir o volume de saída; quinto, para migrar entre bancos de dados, usar o modo «Reconstrução SQL» para mudar de dialeto, tendo em conta que tipos complexos (arrays do PostgreSQL, JSONB) podem exigir ajustes manuais.

Casos de uso

  • Converter para JSON os scripts SQL exportados por mysqldump ou pg_dump, para importar dados via API ou consumi-los no frontend
  • Converter instruções INSERT de banco de dados em arquivos CSV, para importá-los no Excel/WPS/Google Sheets e realizar análise de dados ou relatórios
  • Extrair dados de scripts de backup SQL para XML, para intercâmbio de dados entre sistemas ou integração com interfaces SOAP
  • Converter dados SQL para o formato de configuração YAML, para cenários de configuração do Ansible, Docker Compose, Kubernetes, etc.
  • Converter resultados de consultas SQL (exportados como INSERT) em tabelas HTML, para incorporá-las diretamente em páginas web
  • Converter dados SQL em tabelas Markdown, para colá-las em README, sites de documentação ou blogs técnicos
  • Extrair dados de scripts completos CREATE TABLE + INSERT e convertê-los em JSON Lines para a indexação em massa no Elasticsearch
  • Ao migrar bancos de dados, reconstruir scripts INSERT do MySQL no dialeto PostgreSQL para facilitar a importação entre bancos de dados
  • Gestão de dados de teste: converter dados de seed SQL em configuração JSON, fáceis de ler e versionar pelos programas
  • Demonstrações didáticas: converter instruções SQL em vários formatos e compará-las, para ajudar os estudantes a entender as diferenças entre representações de dados
  • Pré-processamento ETL: converter dumps SQL upstream em JSON/CSV estruturado como entrada de pipelines ETL downstream
  • Análise de dados: extrair dados chave de exports SQL para CSV, para analisá-los com pandas, R e outras ferramentas estatísticas
  • Entrega ao cliente: converter exports de banco de dados para os formatos JSON ou CSV, mais universais, para que não técnicos possam consultá-los
  • Arquivamento de dados: converter os scripts INSERT de bancos de dados históricos em YAML ou Markdown, mais legíveis para arquivamento

Como Usar

  1. Cole o script SQL na caixa de entrada à esquerda, ou clique no botão «Carregar SQL» para selecionar um arquivo .sql/.txt
  2. Clique no botão «Exemplo» para carregar um exemplo SQL integrado (com CREATE TABLE e vários INSERT de tabelas)
  3. Selecione o formato destino (JSON, CSV, XML, YAML e outros 5) no menu suspenso de formato na parte superior do painel de saída à direita
  4. Clique em «Configurações» para ajustar as opções de conversão: saída formatada, incluir BOM, saída separada por tabelas, separador CSV, nome da chave raiz JSON, dialeto SQL, etc.
  5. Clique em «Converter» para executar a conversão. O resultado é exibido no painel direito, a barra de status inferior indica o número de tabelas, linhas, instruções INSERT e outras estatísticas
  6. Clique em «Copiar» para copiar o resultado para a área de transferência, ou em «Baixar» para salvá-lo como arquivo no formato correspondente (por exemplo result.json, result.csv)
  7. Ao alterar o formato de saída a reconversão é automática, sem necessidade de clicar novamente no botão Converter

Recursos

  • Nove formatos de saída: JSON, JSON Lines, CSV, TSV, XML, YAML, tabela HTML, tabela Markdown, reconstrução SQL — alterne o formato com um clique e a reconversão é automática
  • Análise de instruções INSERT: reconhecimento automático da sintaxe INSERT INTO ... VALUES (...), suporte a tuplas únicas e multivalor (várias linhas de dados em uma única instrução INSERT)
  • Reconhecimento de CREATE TABLE: analisa instruções CREATE TABLE para extrair definições de colunas, tipos de dados, NOT NULL, PRIMARY KEY e outras restrições, permitindo inferir tipos de campo
  • Processamento de várias tabelas: quando um script contém várias tabelas, a saída pode ser por tabela (com marcadores de separação por nome de tabela) ou combinada, agregando automaticamente as colunas e linhas de cada tabela
  • Reconhecimento automático de tipos: identificação inteligente de números (inteiros/ponto flutuante), strings, NULL, booleanos (TRUE/FALSE) e literais hexadecimais (0x..., X'...', B'...'), preservando a semântica de tipo original
  • Compatibilidade com vários dialetos: reconhece crases do MySQL (`), aspas duplas do PostgreSQL ("), colchetes do SQL Server ([]) e aspas padrão, removendo automaticamente as aspas de identificador
  • Escape de strings SQL: trata o escape padrão SQL ('' → ') e o escape com barra invertida do MySQL (\n, \r, \t, \0, \', \") para restaurar corretamente strings com caracteres especiais
  • Reconstrução de dialeto SQL: as instruções INSERT podem ser regeneradas nos dialetos MySQL, PostgreSQL, SQLite ou SQL padrão, com nome de tabela personalizado e geração opcional de CREATE TABLE
  • Configuração flexível de CSV: separador à escolha (vírgula/ponto e vírgula/Tabulação/Barra vertical), cabeçalho BOM UTF-8 opcional (compatível com Excel), indentação opcional, em conformidade com o padrão RFC 4180
  • Múltiplas estruturas JSON: três estruturas de saída JSON à escolha — agrupadas por tabela (chave raiz tables), dados puros (chave raiz data) ou array puro (sem chave raiz), adaptadas a diferentes cenários de consumo
  • Estatísticas em tempo real: após a conversão, são exibidos em tempo real o número de tabelas, o número total de linhas, o número de instruções INSERT e o número de caracteres de saída, para verificar a integridade do resultado
  • Upload e download de arquivos: permite upload de arquivos .sql/.txt/.csv/.tsv/.json para análise direta, e o resultado pode ser baixado como arquivo no formato correspondente (.json, .csv, .yaml)
  • Gestão de histórico: painel lateral integrado à esquerda que salva automaticamente as últimas entradas SQL convertidas, para recarregar rapidamente scripts anteriores
  • Design responsivo para mobile: em smartphones alterna automaticamente para um layout de abas entrada/resultado, no desktop usa um painel duplo redimensionável, todas as interações também estão disponíveis no mobile
  • Processamento totalmente local no navegador: todas as etapas de análise e conversão são executadas no JavaScript do navegador, sem nenhuma requisição ao servidor. Os dados SQL não saem do dispositivo — ideal para exports de banco de dados com informações sensíveis

Perguntas frequentes

Para quais formatos o SQL pode ser convertido?

Esta ferramenta suporta nove formatos de saída: JSON (array estruturado), JSON Lines (um objeto JSON por linha), CSV (separado por vírgulas), TSV (separado por tabulações), XML (documento XML padrão com tags), YAML (formato de configuração), tabela HTML (com estilos, visualizável diretamente no navegador), tabela Markdown (sintaxe de documentação) e reconstrução SQL (regeneração de instruções INSERT com dialeto à escolha). Basta um clique no menu suspenso de formato à direita para alternar e reconverter automaticamente.

Quais instruções SQL são suportadas?

Principalmente são analisadas as instruções INSERT INTO ... VALUES (...) para extrair dados, e reconhecidas as instruções CREATE TABLE para obter definições de colunas e informações de tipo. Suporta INSERT únicos, INSERT com tuplas múltiplas (várias linhas em uma única instrução), várias instruções INSERT e INSERT distribuídas em várias tabelas. Os comentários (-- uma linha, /* */ várias linhas, # MySQL uma linha) são removidos automaticamente e não afetam a análise.

Quais dialetos de banco de dados são suportados?

Durante a análise, são compatíveis os estilos de aspas de identificador do MySQL (crase `), PostgreSQL (aspas duplas "), SQL Server (colchetes []) e SQL padrão, sendo removidos automaticamente para restaurar os nomes originais de colunas e tabelas. No modo de reconstrução SQL, INSERT pode ser regenerado nos dialetos MySQL, PostgreSQL, SQLite ou SQL padrão; as aspas e a representação de booleanos variam conforme o dialeto.

Como são tratadas várias tabelas em um script SQL?

A ferramenta agrega automaticamente os dados INSERT por nome de tabela. Quando a opção «Saída separada por tabelas» está ativada nas configurações, os formatos tabulares como CSV/HTML/Markdown são emitidos em segmentos por tabela (com marcação do nome da tabela), e os formatos estruturados como JSON/XML são agrupados por nome de tabela. Se a opção estiver desativada, CSV produz apenas os dados da primeira tabela, e JSON pode ser emitido sem chave raiz como array puro.

Como são tratados NULL, os booleanos e os caracteres especiais em SQL?

A ferramenta reconhece automaticamente NULL (sem distinguir maiúsculas/minúsculas), os booleanos TRUE/FALSE, os literais hexadecimais (0x..., X'...', B'...'), os inteiros e os números de ponto flutuante. As strings são tratadas com o escape padrão SQL ('' → ') e o escape com barra invertida do MySQL (\n, \t, \' etc.) para restaurar corretamente o conteúdo original com quebras de linha, aspas e caracteres especiais. Na saída CSV, os campos que contêm vírgula, aspa ou quebra de linha são envolvidos por aspas e escapados em conformidade com o padrão RFC 4180.

Qual é a estrutura do JSON convertido?

A saída JSON suporta três estruturas: «chave raiz tables» (agrupada por nome de tabela, recomendada para várias tabelas), «chave raiz data» (encapsulamento unificado), «sem chave raiz» (array puro, adequado para tabela única ou processamento em fluxo). Por exemplo, uma tabela única users se transforma em [{"id":1,"name":"Alice"},...], várias tabelas são agrupadas por nome em {"users":[...],"orders":[...]}. Selecionável nas configurações.

Os arquivos SQL carregados são salvos no servidor?

Não. Esta ferramenta é uma aplicação puramente frontend. Todas as etapas de análise e conversão são executadas localmente no JavaScript do navegador, sem enviar o conteúdo SQL ou os resultados para nenhum servidor. Os arquivos carregados são lidos diretamente no navegador via FileReader e excluídos automaticamente ao fechar a página. Adequado para exports de banco de dados com dados pessoais ou sensíveis.

Os identificadores com colchetes do SQL Server são suportados?

Sim. A ferramenta reconhece os identificadores com colchetes do SQL Server/T-SQL (por exemplo [users], [order details]) e remove automaticamente os colchetes para restaurar os nomes originais. Também suporta as crases do MySQL e as aspas duplas do PostgreSQL. No modo de reconstrução SQL, a escolha do dialeto determina o estilo de aspas usado para regenerar INSERT.

Por que a conversão do meu script SQL não produz nenhum dado?

Verifique se o SQL contém instruções INSERT INTO ... VALUES (...). Esta ferramenta só analisa instruções INSERT para extrair dados; as consultas SELECT não geram saída. Se houver apenas instruções CREATE TABLE, é exibido o aviso «Apenas CREATE TABLE foi detectado, não há linhas de dados para converter». Certifique-se de que o script SQL é um export de dados (dump) e não consultas.

Procedimentos armazenados, funções e gatilhos são suportados?

Não. Esta ferramenta é focada na extração de dados e só analisa instruções INSERT e CREATE TABLE. Procedimentos armazenados (CREATE PROCEDURE), funções (CREATE FUNCTION), gatilhos (CREATE TRIGGER) e views (CREATE VIEW) não são analisados. Para migrar esses objetos, use ferramentas nativas como pg_dump ou mysqldump.

Os caracteres chineses são exibidos corretamente no arquivo CSV convertido ao abrir no Excel?

Sim. Ao ativar a opção «Incluir BOM» nas configurações, o arquivo CSV recebe um cabeçalho BOM UTF-8 (\uFEFF), e o Excel reconhece corretamente a codificação e exibe os caracteres não ASCII como o chinês de forma correta. Sem BOM, algumas versões do Excel podem exibir o chinês UTF-8 como caracteres errôneos. Planilhas modernas como Google Sheets ou WPS geralmente reconhecem a codificação corretamente mesmo sem BOM.

É possível reconstruir instruções INSERT a partir de um script SQL?

Sim. Com o formato de saída «Reconstrução SQL» você pode regenerar instruções INSERT. É possível escolher o dialeto destino (MySQL/PostgreSQL/SQLite/SQL padrão), personalizar o nome da tabela e gerar opcionalmente uma instrução CREATE TABLE (os tipos de coluna INT/BIGINT/FLOAT/VARCHAR/TEXT/BOOLEAN são deduzidos automaticamente a partir dos dados). Ideal para reconvertir um script MySQL no dialeto PostgreSQL ou para reimportar após modificar o nome da tabela.

Qual é a diferença entre JSON Lines e JSON? Quando usar JSON Lines?

A saída JSON é um array JSON completo ([{...},{...}]), adequado para programas que carregam tudo na memória. JSON Lines (também chamado NDJSON) contém um objeto JSON independente por linha, adequado para processamento em fluxo, importação de grandes volumes, API bulk do Elasticsearch, análise de logs, etc., onde a leitura linha a linha reduz o consumo de memória. A ferramenta permite alternar livremente entre os dois formatos.

A ordem original das colunas é preservada no resultado?

Sim. A ferramenta mantém os nomes das colunas na ordem especificada na instrução INSERT. Se o INSERT não indicar explicitamente os nomes das colunas (por exemplo INSERT INTO t VALUES (...)), são gerados nomes de coluna de substituição como col_1, col_2, etc., com base no número de valores da primeira linha. A ordem das colunas de cada tabela é preservada de forma independente e apresentada por tabela na exportação combinada.

Qual é o tamanho máximo de arquivo SQL suportado?

Teoricamente não há um limite estrito; o limite é imposto pela memória do navegador. Dumps SQL de algumas dezenas de MB geralmente são processados com fluidez, enquanto arquivos muito grandes (várias centenas de MB) podem ficar lentos por falta de memória do navegador. Para arquivos muito grandes, recomenda-se dividi-los em vários arquivos menores para converter em lotes, ou desativar a «saída formatada» para reduzir o consumo de memória. A análise é feita localmente no navegador e não é limitada pela transferência de rede.

Solução de Problemas

Não há dados de saída após a conversão?

Causa 1: o script SQL contém apenas consultas SELECT. Esta ferramenta só analisa instruções INSERT para extrair dados e não executa consultas. Solução: use mysqldump/pg_dump para exportar os dados como instruções INSERT. Causa 2: o script SQL contém apenas CREATE TABLE sem linhas de dados; nesse caso é exibido um aviso. Causa 3: a sintaxe INSERT não é padrão (por exemplo falta da palavra-chave VALUES); verifique a sintaxe SQL. Causa 4: todo o conteúdo SQL está comentado (-- ou /* */); verifique se marcadores de comentário foram deixados por engano.

Os caracteres chineses do CSV aparecem como caracteres errôneos no Excel?

O Excel reconhece por padrão o CSV na codificação GBK, de modo que o chinês em UTF-8 aparece como caracteres errôneos. Solução: ative a opção «Incluir BOM» nas configurações. O arquivo CSV resultante terá um cabeçalho BOM UTF-8 (\uFEFF), e o Excel reconhecerá corretamente a codificação UTF-8. Se já tiver exportado um CSV sem BOM, você pode salvá-lo novamente como «UTF-8 com BOM» em um editor de texto antes de abri-lo no Excel, ou abri-lo diretamente com Google Sheets, WPS ou outra planilha moderna.

Os números viram strings no JSON?

Causa: o número está envolto por aspas no SQL (por exemplo '123' em vez de 123), a ferramenta o analisa como string. Solução: verifique se os números estão entre aspas no script SQL e remova-as. Se os dados originais são assim (por exemplo CEPs muitas vezes armazenados como string), este é o comportamento esperado, pois a semântica de string evita a perda de zeros à esquerda (01234 não é convertido em 1234).

Erro ao converter strings com caracteres especiais?

Causa: os caracteres especiais (quebra de linha, aspa, barra invertida) da string SQL não estão corretamente escapados. Esta ferramenta suporta o escape padrão SQL ('' → ') e o escape com barra invertida do MySQL (\n, \' etc.). No entanto, se o SQL original usa um escape não padrão (por exemplo strings E'...' do PostgreSQL), a restauração pode falhar. Solução: verifique a conformidade do escape SQL e ajuste-o manualmente em um editor de texto antes de converter, se necessário.

Ao converter um SQL com várias tabelas, apenas a primeira aparece?

Causa: a opção «Saída separada por tabelas» não está ativada; os formatos tabulares como CSV/HTML/Markdown produzem por padrão apenas a primeira tabela. Solução: ative «Saída separada por tabelas» nas configurações. O CSV será emitido em segmentos por tabela (com marcador # Table: nome da tabela), e o JSON será agrupado por nome da tabela ({nome_tabela1:[...],nome_tabela2:[...]}). Observação: o formato JSON Lines não distingue tabelas; todas as linhas são combinadas.

Após a reconstrução SQL, as aspas dos nomes de tabelas ou colunas estão incorretas?

Causa: o dialeto escolhido na reconstrução está errado. Os dialetos usam estilos de aspas diferentes (crase MySQL, aspas duplas PostgreSQL, colchetes SQL Server). Solução: selecione o dialeto SQL destino nas configurações; a ferramenta regenera INSERT com o estilo de aspas correspondente. Por exemplo, ao escolher PostgreSQL o nome da tabela se torna "users"; ao escolher MySQL, `users`.

Glossário

SQL (Structured Query Language)
Linguagem de consulta estruturada, a linguagem padrão de consulta e operação em bancos de dados relacionais (MySQL, PostgreSQL, Oracle, SQL Server, SQLite). Inclui sublinguagens como DDL (definição de dados), DML (manipulação de dados), DQL (consulta de dados) e DCL (controle de dados).
Instrução INSERT
Instrução SQL para inserir dados em uma tabela, sintaxe INSERT INTO table (cols) VALUES (vals). Suporta tuplas únicas e múltiplas para inserção em lote. Esta ferramenta analisa principalmente instruções INSERT para extrair dados.
Instrução CREATE TABLE
Instrução DDL do SQL para criar uma tabela. Define nomes de colunas, tipos de dados e restrições (NOT NULL, PRIMARY KEY, UNIQUE, etc.). Esta ferramenta pode analisar CREATE TABLE para extrair as definições de colunas.
Tupla VALUES
Lista de valores entre parênteses após a palavra-chave VALUES em uma instrução INSERT, por exemplo (1, 'Alice', TRUE). Uma instrução INSERT pode conter várias tuplas para inserção em lote: VALUES (1,'A'), (2,'B'), (3,'C').
Dialeto SQL
Diferenças de extensão dos fabricantes de bancos de dados em relação ao padrão SQL, por exemplo aspas de identificador (crase MySQL, aspas duplas PostgreSQL, colchetes SQL Server), booleanos (TRUE/1), colunas autoincrementáveis (AUTO_INCREMENT/SERIAL), etc.
Aspas de identificador
Caracteres especiais em SQL que envolvem os nomes de tabelas e colunas. O MySQL usa a crase `name`, o PostgreSQL e o SQL padrão as aspas duplas "name", o SQL Server os colchetes [name]. Servem para escapar palavras reservadas ou em cenários sensíveis a maiúsculas/minúsculas.
Escape SQL
Mecanismo para representar caracteres especiais em strings SQL. O padrão SQL usa a duplicação de aspas simples ('') para uma aspa simples; o MySQL admite ainda o escape com barra invertida (\n, \t, \', \\). Esta ferramenta sabe restaurar ambos os mecanismos de escape.
Valor NULL
Valor especial em SQL que representa um dado ausente ou desconhecido, sem distinguir maiúsculas/minúsculas (NULL/null/Null). NULL não é igual à string vazia nem a 0. Em JSON, NULL é mapeado para null; em CSV, geralmente é deixado em branco.
Literal hexadecimal
Sintaxe literal em SQL para representar dados binários. O MySQL suporta as formas 0x... e X'...', o PostgreSQL X'...' e B'...' (binário). Esta ferramenta conserva os literais hexadecimais como estão.
JSON Lines (NDJSON)
Formato de texto com um objeto JSON independente por linha, extensão .jsonl. Adequado para processamento em fluxo, importação de grandes volumes e API bulk do Elasticsearch, mais econômico em memória do que um array JSON completo.
RFC 4180
Padrão internacional do formato CSV (Common Format and MIME Type for Comma-Separated Values Files) que define as regras de separação de campos, escape com aspas e tratamento de quebras de linha. A saída CSV desta ferramenta está em conformidade com este padrão.
BOM (Byte Order Mark)
Marca de ordem de bytes, caractere U+FEFF. Um BOM no início de um arquivo UTF-8 ajuda programas como o Excel a reconhecer a codificação e evita a exibição errônea de caracteres chineses. A saída CSV desta ferramenta pode incluir opcionalmente um BOM.
SQL Dump
Arquivo de script SQL exportado de um banco de dados, geralmente produzido por ferramentas como mysqldump ou pg_dump, contendo instruções CREATE TABLE e INSERT para backups e migrações de banco de dados.
DDL (Data Definition Language)
Linguagem de definição de dados, subconjunto do SQL que inclui instruções como CREATE, ALTER, DROP, usada para definir e modificar a estrutura de um banco de dados (tabelas, views, índices, etc.).

Comparação dos formatos de saída suportados

Comparação das características e casos de uso dos nove formatos de saída:

FormatoExtensãoCaracterísticaCaso de uso ideal
JSON.jsonArray estruturado, tipos preservadosAPI, leitura por programa, dados frontend
JSON Lines.jsonlUm objeto JSON por linhaProcessamento em fluxo, Elasticsearch, big data
CSV.csvTabela separada por vírgulas, RFC 4180Excel, análise de dados, relatórios
TSV.tsvTabela separada por tabulaçõesColar em planilha, bioinformática
XML.xmlDocumento estruturado com tags e atributosInterfaces SOAP, arquivos de config, sistemas Java
YAML.yamlFormato de configuração mais legívelAnsible, K8s, configuração CI/CD
HTML.htmlTabela com estilos, visualizável no navegadorExibição web, e-mails, relatórios
Markdown.mdSintaxe de tabela MarkdownREADME, sites de doc, blogs técnicos
Reconstrução SQL.sqlINSERT regenerado, dialeto modificávelMigração entre bancos, alteração de nome de tabela

Regras de reconhecimento de tipos de valores SQL

Regras de reconhecimento de tipos ao analisar valores SQL (com base na forma literal):

Literal SQLTipo reconhecidoSaída JSONSaída CSV
123Inteiro123123
-45Inteiro negativo-45-45
3.14Ponto flutuante3.143.14
1e10Notação científica1000000000010000000000
'hello'String"hello"hello
NULLValor nulonull(vazio)
TRUEBooleano verdadeirotrueTRUE
FALSEBooleano falsofalseFALSE
0xFFHexadecimal"0xFF"0xFF
X'4142'Hexadecimal"X'4142'"X'4142'

Estilos de aspas de identificador nos diferentes dialetos de banco de dados

Diferenças nas aspas de identificador (nomes de tabelas e colunas) entre os principais bancos de dados:

Banco de dadosEstilo de aspasExemploNota
MySQL/MariaDBCrase ``users`Ativado por padrão, distingue palavras reservadas
PostgreSQLAspas duplas ""users"Sensível a maiúsculas/minúsculas, estilo SQL padrão
SQLiteAspas duplas "/Crase`/Colchetes[]"users" / [users]Compatível com vários estilos
SQL ServerColchetes [][users]Estilo padrão T-SQL
OracleAspas duplas ""users"Força maiúsculas, aspas preservam minúsculas
SQL padrãoAspas duplas ""users"Padrão ANSI SQL

Privacy & Security

Todas as operações deste conversor SQL são realizadas integralmente de forma local no seu navegador: a análise SQL, a extração de dados e a conversão de formato são executadas no lado cliente no JavaScript do navegador, sem que nenhum conteúdo SQL, arquivo carregado ou resultado de conversão seja enviado pela rede a um servidor. Os uploads de arquivos são lidos diretamente na memória pela API FileReader nativa do navegador, sem serviços intermediários. Não são usados cookies de rastreamento, não é coletada nenhuma entrada de usuário nem dado de uso. Ao fechar ou recarregar a página, todas as entradas e saídas são automaticamente apagadas da memória (o histórico é conservado apenas localmente no localStorage do navegador). Adequado para scripts de exportação de banco de dados com informações pessoais ou comerciais sensíveis.

Authoritative References