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 Todas

O 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

  1. Cole o SQL na caixa Entrada SQL, ou use Carregar exemplo ou Abrir arquivo.
  2. Mantenha Escapes com barra invertida em strings (MySQL) ativado para dumps do MySQL, ou desative-o para SQL padrão / PostgreSQL.
  3. Escolha a Indentação do JSON.
  4. A saída JSON é atualizada enquanto você digita; use Copiar ou Baixar.

Exemplo

Entrada
INSERT INTO users (id, name) VALUES (1, 'O''Brien'), (2, NULL);
Saída
[
  {
    "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.

Próximos passos recomendados

Explore mais categorias