Conversor de JSON para SQL

Converta JSON em instruções SQL INSERT e um CREATE TABLE opcional para MySQL, PostgreSQL, SQLite ou SQL Server, com aspas e escapes corretos. Grátis.

Executa totalmente no seu navegador. Seus dados nunca são enviados.

Ferramentas Relacionadas

Ver Todas

O que é JSON para SQL?

Transforme um array JSON de objetos em SQL: um CREATE TABLE opcional com tipos de coluna inferidos, seguido de instruções INSERT. Identificadores e strings recebem aspas e escapes de acordo com o dialeto escolhido.

Como usar JSON para SQL

  1. Cole o JSON na caixa Entrada JSON, ou use Carregar exemplo ou Abrir arquivo.
  2. Escolha o Dialeto SQL e informe o Nome da tabela.
  3. Ative ou desative Incluir CREATE TABLE e INSERT com várias linhas.
  4. A saída SQL é atualizada enquanto você digita; use Copiar ou Baixar.

Exemplo

Entrada
[{"id":1,"name":"O'Brien"}]
Saída
CREATE TABLE `my_table` (
  `id` INT,
  `name` VARCHAR(255)
);

INSERT INTO `my_table` (`id`, `name`) VALUES
  (1, 'O''Brien');

Quando usar JSON para SQL

Use-o para popular um banco de dados a partir de exportações JSON, fixtures ou dados de API. Revise os tipos de coluna gerados e acrescente você mesmo chaves primárias, NOT NULL e índices – eles não podem ser inferidos de dados de exemplo.

Como funciona JSON para SQL

As colunas são a união de todas as chaves dos objetos. O tipo de cada coluna é inferido dos valores não nulos: inteiros → INT/INTEGER (BIGINT acima de 32 bits), decimais → DOUBLE / DOUBLE PRECISION / REAL / FLOAT, booleanos → BOOLEAN (BIT no SQL Server, INTEGER no SQLite), strings → VARCHAR(255) ou TEXT/NVARCHAR(MAX) conforme o tamanho, objetos/arrays aninhados → JSON/JSONB ou texto. Identificadores usam acentos graves (MySQL), aspas duplas (PostgreSQL, SQLite) ou colchetes (SQL Server). As strings duplicam as aspas simples; o MySQL também faz escape das barras invertidas, e o SQL Server usa N'…' para texto não ASCII. Inserts com várias linhas são divididos em blocos de 1000 linhas no SQL Server.

Casos de Uso Comuns

  • Popular um banco de dados de desenvolvimento a partir de uma fixture JSON
  • Importar dados de API no PostgreSQL
  • Criar rapidamente uma tabela SQLite a partir de JSON para análise
  • Gerar instruções INSERT para um script de migração

Perguntas Frequentes

O SQL é seguro contra injeção?

Todos os valores de string recebem escape para o dialeto selecionado, mas sempre revise o SQL gerado antes de executá-lo em dados de produção.

Como objetos aninhados são armazenados?

Como texto JSON em uma coluna JSON (MySQL), JSONB (PostgreSQL) ou de texto.

Por que o SQL Server gera várias instruções INSERT?

O SQL Server permite no máximo 1000 linhas em uma lista VALUES, então entradas maiores são divididas.

Próximos passos recomendados

Explore mais categorias