Converter JSON para SQL Server
Solte seu arquivo JSON e receba um script para SQL Server com comandos CREATE TABLE e INSERT. Cada coluna recebe um tipo, e cada correção é listada com sua linha e coluna.
4 linhas convertidas, 2 correções, nenhuma rejeitada
| Linha | ||||||
|---|---|---|---|---|---|---|
| 2 | 000481 | Peña Muñoz | 2024-02-03T10:15:00Z | 1234.5 | true | |
| 3 | 000482 | José Ángel Ruiz | 2024-02-15T16:40:00Z | 99.9 | false | Entrega en la tarde |
| 4 | 000483 | Zoë Ortíz | 2024-02-29T09:05:00Z | 12 | true | |
| 5 | 000484 | Ñuño Castañeda | 2024-03-11T13:30:00Z | 980.75 | sí | Factura con "RFC" |
-- Written by IntoSQL for SQL Server.
SET NOCOUNT ON;
BEGIN TRANSACTION;
CREATE TABLE pedidos_2024 (
pedido nvarchar(8) NOT NULL,
cliente nvarchar(16) NOT NULL,
fecha datetimeoffset NOT NULL,
total decimal(6,2) NOT NULL,
pagado bit NOT NULL,
notas nvarchar(32)
);
INSERT INTO pedidos_2024 (pedido, cliente, fecha, total, pagado, notas) VALUES
(N'000481', N'Peña Muñoz', '2024-02-03T10:15:00+00:00', 1234.5, 1, NULL),
(N'000482', N'José Ángel Ruiz', '2024-02-15T16:40:00+00:00', 99.9, 0, N'Entrega en la tarde'),
(N'000483', N'Zoë Ortíz', '2024-02-29T09:05:00+00:00', 12, 1, NULL),
(N'000484', N'Ñuño Castañeda', '2024-03-11T13:30:00+00:00', 980.75, 1, N'Factura con "RFC"');
COMMIT TRANSACTION;
Correções
- Zeros à esquerda mantidos em "pedido": 000481 continua 000481, salvo como texto.
- "pagado" contém palavras de sim e não (sí), salvas como booleano.
Seu arquivo é convertido neste computador e nunca é enviado.
Outros exemplos:
De JSON para SQL Server, coluna por coluna
O exemplo acima, pedidos_2024.json, como o IntoSQL o escreve para SQL Server: o que cada coluna contém no arquivo, o tipo que recebe e como seu primeiro valor fica no script.
| No arquivo | Primeiro valor | Coluna | Tipo no SQL Server | No script |
|---|---|---|---|---|
| pedido | 000481 | pedido | nvarchar(8) | N'000481' |
| cliente | Peña Muñoz | cliente | nvarchar(16) | N'Peña Muñoz' |
| fecha | 2024-02-03T10:15:00Z | fecha | datetimeoffset | '2024-02-03T10:15:00+00:00' |
| total | 1234.5 | total | decimal(6,2) | 1234.5 |
| pagado | true | pagado | bit | 1 |
| notas | - | notas | nvarchar(32) | NULL |
Carregue o script no SQL Server
O download é um arquivo .sql simples. Execute-o com as ferramentas do próprio SQL Server.
Pelo terminal
sqlcmd -S localhost -d mydb -f 65001 -i pedidos_2024.sql_server.sql-f 65001 lê o arquivo como UTF-8, então os acentos e o ñ chegam como foram escritos.
Por uma ferramenta de banco de dados
No SQL Server Management Studio ou no Azure Data Studio, abra o arquivo e escolha Execute.
O que saber sobre arquivos JSON e SQL Server
O que o IntoSQL lê em arquivos JSON
- O arquivo pode ser um array de objetos, um objeto que guarda esse array sob uma chave como data, ou um objeto por linha (NDJSON).
- Cada chave vira uma coluna. Objetos e arrays dentro de um valor são mantidos como texto JSON.
- Os números mantêm os dígitos exatos, e datas ISO 8601 viram datas ou timestamps.
O que saber sobre SQL Server
- Texto é nvarchar com valores N'...', então os acentos se mantêm; texto com mais de 4000 caracteres vira nvarchar(max).
- Valores de sim e não viram bit, e datas com fuso viram datetimeoffset.
- Valores longos são escritos em partes, então o sqlcmd e o SQL Server Management Studio aceitam o script.
Como cada tipo de valor é armazenado no SQL Server
| Valor | SQL Server |
|---|---|
| Sim e não | bit |
| Números inteiros | int |
| Números inteiros grandes | bigint |
| Decimais | decimal(p,s) |
| Números de ponto flutuante | float |
| Datas | date |
| Horários | time |
| Datas com hora | datetime2 |
| Datas com hora e fuso | datetimeoffset |
| Texto | nvarchar(n)nvarchar(max) |
Perguntas sobre JSON para SQL Server
Não encontrou a resposta? Escreva para nós pela página de contato e uma pessoa responde. Página de contato
Como converto JSON para SQL Server?
Solte seu arquivo no conversor no topo desta página. Ele encontra o cabeçalho, lê cada valor e escreve o script para SQL Server, listando cada correção feita. Baixe o script e execute-o com sqlcmd.
Qual formato o arquivo JSON precisa ter?
Um array de objetos, um objeto que guarda esse array em uma chave como data, ou um objeto por linha (NDJSON). Cada chave vira uma coluna.
Quais tipos do SQL Server ele usa?
Valores sim e não viram bit, números inteiros int, decimais decimal(p,s), datas date, datas com hora datetime2 e texto nvarchar(n). Os tamanhos vêm do valor mais longo de cada coluna.
Ele mantém os zeros à esquerda no SQL Server?
Sim. Um código como 000481 continua como texto, então o SQL Server o guarda como nvarchar(8) e o script o escreve como N'000481'.
Ele carrega os dados no SQL Server sem um script?
Não. Baixe o script e execute-o com sqlcmd. A carga sem script funciona com PostgreSQL, MySQL, MariaDB e SQLite, pelo app para desktop ou pela linha de comando.
Qual o tamanho máximo do arquivo JSON?
NDJSON, um objeto por linha, é lido à medida que chega, então arquivos de vários gigabytes funcionam no navegador. Um documento JSON é lido inteiro, então o limite é a memória que o navegador dá a esta página. O app para desktop e a linha de comando aceitam arquivos de qualquer tamanho.