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 TodasO 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
- Cole o JSON na caixa Entrada JSON, ou use Carregar exemplo ou Abrir arquivo.
- Escolha o Dialeto SQL e informe o Nome da tabela.
- Ative ou desative Incluir CREATE TABLE e INSERT com várias linhas.
- A saída SQL é atualizada enquanto você digita; use Copiar ou Baixar.
Exemplo
[{"id":1,"name":"O'Brien"}] 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.