Pular para o conteúdo

Converter CSV para SQLite

Solte seu arquivo CSV e receba um script para SQLite com comandos CREATE TABLE e INSERT. Cada coluna recebe um tipo, e cada correção é listada com sua linha e coluna.

Seu arquivo
csvventas_2024.csvArquivo de exemplo, 357 B
Seu banco de dados

5 linhas convertidas, 8 correções, nenhuma rejeitada

Mostrar
As primeiras linhas de ventas_2024.csv, com cada correção marcada
Linha
500412Peña MuñozMérida15/02/20241.234,50sí
600413José Ángel RuizLeón03/02/202499,90no
700414Zoë OrtízQuerétaro29/02/2024N/Así
800415Ñuño CastañedaOaxaca28/02/20247,25no
900416Iñaki OlaizolaMazatlán11/03/2024980,75sí
-- Written by IntoSQL for SQLite.

BEGIN;

CREATE TABLE ventas_2024 (
    folio TEXT NOT NULL,
    cliente TEXT NOT NULL,
    ciudad TEXT NOT NULL,
    fecha DATE NOT NULL,
    importe NUMERIC(6,2),
    pagado BOOLEAN NOT NULL
);

INSERT INTO ventas_2024 (folio, cliente, ciudad, fecha, importe, pagado) VALUES
('00412', 'Peña Muñoz', 'Mérida', '2024-02-15', 1234.50, 1),
('00413', 'José Ángel Ruiz', 'León', '2024-02-03', 99.90, 0),
('00414', 'Zoë Ortíz', 'Querétaro', '2024-02-29', NULL, 1),
('00415', 'Ñuño Castañeda', 'Oaxaca', '2024-02-28', 7.25, 0),
('00416', 'Iñaki Olaizola', 'Mazatlán', '2024-03-11', 980.75, 1);

COMMIT;

Correções

  1. O arquivo foi escrito em windows‑1252; ele foi convertido para UTF-8.
  2. O cabeçalho está na linha 4; as linhas acima dele ficaram de fora.
  3. A linha 10 ("TOTAL") é um total, então ficou de fora.
  4. Zeros à esquerda mantidos em "Folio": 00412 continua 00412, salvo como texto.
  5. 15/02/2024 prova que as datas em "Fecha" começam pelo dia, então 03/02/2024 é lido como 2024‑02‑03.
  6. Os números em "Importe" usam vírgula decimal: 1.234,50 é lido como 1234.50.
  7. N/A em "Importe" lidos como vazios (1 de 5 valores).
  8. "Pagado" contém palavras de sim e não (sí, no), salvas como booleano.

Seu arquivo é convertido neste computador e nunca é enviado.

Outros exemplos:

De CSV para SQLite, coluna por coluna

O exemplo acima, ventas_2024.csv, como o IntoSQL o escreve para SQLite: o que cada coluna contém no arquivo, o tipo que recebe e como seu primeiro valor fica no script.

No arquivoPrimeiro valorColunaTipo no SQLiteNo script
Folio00412folioTEXT'00412'
ClientePeña MuñozclienteTEXT'Peña Muñoz'
CiudadMéridaciudadTEXT'Mérida'
Fecha15/02/2024fechaDATE'2024-02-15'
Importe1.234,50importeNUMERIC(6,2)1234.50
PagadosípagadoBOOLEAN1

Carregue o script no SQLite

O download é um arquivo .sql simples. Execute-o com as ferramentas do próprio SQLite.

Pelo terminal

sqlite3 ventas_2024.db < ventas_2024.sqlite.sql

O arquivo do banco de dados é criado se não existir. O conversor também baixa um banco .sqlite pronto, sem nenhum comando.

Por uma ferramenta de banco de dados

No DB Browser for SQLite, escolha Execute SQL, abra o script e execute-o.

Sem script

A linha de comando carrega o arquivo direto em um banco SQLite, sem escrever um script. É grátis.

intosql load ventas_2024.csv --into ventas_2024.db

O que saber sobre arquivos CSV e SQLite

O que o IntoSQL lê em arquivos CSV

  • A codificação é detectada, incluindo Windows-1252 e UTF-16, então acentos e ç chegam intactos.
  • O separador é detectado: vírgula, ponto e vírgula, tabulação ou barra vertical. Com ponto e vírgula, vírgulas decimais como 1.234,50 são lidas como números.
  • Valores entre aspas podem conter separadores e quebras de linha.

O que saber sobre SQLite

  • Cada coluna recebe o tipo de que seus valores precisam, como INTEGER, NUMERIC, TEXT, DATE ou BOOLEAN; sim e não são guardados como 1 e 0.
  • Decimais com mais de 15 dígitos continuam como TEXT, então nenhum dígito se perde no arredondamento.
  • Baixe o script do SQLite, ou um banco de dados .sqlite pronto, criado no seu navegador.

Como cada tipo de valor é armazenado no SQLite

ValorSQLite
Sim e nãoBOOLEAN
Números inteirosINTEGER
Números inteiros grandesINTEGER
DecimaisNUMERIC(p,s)TEXT
Números de ponto flutuanteREAL
DatasDATE
HoráriosTIME
Datas com horaDATETIME
Datas com hora e fusoDATETIME
TextoTEXT

Perguntas sobre CSV para SQLite

Não encontrou a resposta? Escreva para nós pela página de contato e uma pessoa responde. Página de contato

Como converto CSV para SQLite?

Solte seu arquivo no conversor no topo desta página. Ele encontra o cabeçalho, lê cada valor e escreve o script para SQLite, listando cada correção feita. Baixe o script e execute-o com sqlite3.

E se meu CSV usar ponto e vírgula ou tabulação?

O separador é detectado: vírgula, ponto e vírgula, tabulação ou barra vertical. Você também pode defini-lo em Mais opções. Com ponto e vírgula, vírgulas decimais como 1.234,50 são lidas como números.

Quais tipos do SQLite ele usa?

Valores sim e não viram BOOLEAN, números inteiros INTEGER, decimais NUMERIC(p,s), datas DATE, datas com hora DATETIME e texto TEXT. Os tamanhos vêm do valor mais longo de cada coluna.

Ele mantém os zeros à esquerda no SQLite?

Sim. Um código como 00412 continua como texto, então o SQLite o guarda como TEXT e o script o escreve como '00412'.

Ele carrega os dados no SQLite sem um script?

Sim, de graça: intosql load cria o arquivo do banco SQLite e carrega as linhas. O conversor desta página também baixa um banco .sqlite pronto.

Qual o tamanho máximo do arquivo CSV?

O navegador lê o CSV à medida que ele chega, então arquivos de vários gigabytes funcionam. Em um notebook com Apple M4, a linha de comando converte um CSV de 174 MB com um milhão de linhas em menos de um segundo.