Conversor de SQL para JSON (INSERT … VALUES)
Converta instruções SQL INSERT em JSON: VALUES com várias linhas, identificadores entre aspas, aspas escapadas, NULL, TRUE/FALSE e números, em várias tabelas. Grátis.
Executa totalmente no seu navegador. Seus dados nunca são enviados.
Ferramentas Relacionadas
Ver TodasO que é SQL para JSON?
Cole um SQL com instruções INSERT – um dump de banco de dados, um arquivo de seed ou uma migração – e obtenha as linhas em JSON. Cada linha vira um objeto com os nomes das colunas como chaves; inserts em várias tabelas produzem um objeto com um array por tabela.
Como usar SQL para JSON
- Cole o SQL na caixa Entrada SQL, ou use Carregar exemplo ou Abrir arquivo.
- Mantenha Escapes com barra invertida em strings (MySQL) ativado para dumps do MySQL, ou desative-o para SQL padrão / PostgreSQL.
- Escolha a Indentação do JSON.
- A saída JSON é atualizada enquanto você digita; use Copiar ou Baixar.
Exemplo
INSERT INTO users (id, name) VALUES (1, 'O''Brien'), (2, NULL);
[
{
"id": 1,
"name": "O'Brien"
},
{
"id": 2,
"name": null
}
] Quando usar SQL para JSON
Use-o para extrair dados de dumps SQL ou arquivos de seed sem rodar um banco de dados. Ele não executa SQL: instruções SELECT, UPDATE e DDL são ignoradas, e funções não são avaliadas.
Como funciona SQL para JSON
Um tokenizador lê strings (aspas duplicadas '', escapes opcionais com barra invertida do MySQL, prefixos N'…' e E'…'), identificadores entre aspas ("…", acentos graves, […]), números e comentários (--, #, /* */). Depois, o parser procura INSERT [IGNORE] INTO table [(columns)] VALUES (…), (…) e pula todas as outras instruções. NULL, TRUE e FALSE viram null e booleanos JSON; inteiros grandes demais para o JavaScript são mantidos com exatidão. Expressões como NOW() são mantidas como o texto original. Linhas sem lista de colunas recebem as chaves column1, column2, …
Casos de Uso Comuns
- Transformar um trecho de mysqldump em fixtures JSON
- Inspecionar os dados de seed de um arquivo de migração
- Levar algumas linhas de SQL para um banco NoSQL
- Conferir quais valores uma instrução INSERT realmente contém
Perguntas Frequentes
Quais dialetos SQL funcionam?
A sintaxe INSERT do MySQL/MariaDB, PostgreSQL, SQLite e SQL Server: todos os estilos de aspas em identificadores deles são reconhecidos. Desative os escapes com barra invertida em dumps que não são do MySQL e contêm caminhos do Windows.
E o INSERT … SELECT?
Só listas VALUES contêm dados literais; instruções INSERT … SELECT são puladas.
Por que NOW() vira uma string?
A ferramenta não executa SQL, então as expressões são mantidas como o texto original.