Converter sqlite para dbf

Conversor online gratuito de SQLITE para DBF

Converta as tabelas SQLite selecionadas em arquivos DBF para softwares legados de GIS e de banco de dados.

Converter SQLITE para DBF online - grátis

Uploading…
Os arquivos selecionados excedem o limite total de 75 MB. Selecione arquivos menores ou em menor quantidade.

Seu arquivo é processado instantaneamente e excluído assim que você o baixa.

Como funciona

  1. 1/3

    Envie seu arquivo .sqlite

    Clique para selecionar o arquivo que deseja converter ou simplesmente arraste e solte o arquivo na área indicada.

  2. 2/3

    Faça a conversão de .sqlite para .dbf

    Após o envio do arquivo, clique em converter quando estiver pronto.

  3. 3/3

    Baixe o arquivo .dbf convertido

    O resultado da conversão está pronto para download.

Como converter sqlite para dbf arquivo

Programas GIS, cadastrais, contábeis e de banco de dados legados podem exigir uma tabela dBASE .dbf em vez de um banco de dados SQLite. A conversão dos dados disponibiliza uma tabela SQLite selecionada para softwares que não conseguem ler .sqlite ou que esperam nomes de campos, tipos e codificação de DBF.

O que é o formato SQLite

SQLite é um banco de dados relacional autocontido armazenado em um único arquivo, geralmente usando as extensões .sqlite, .sqlite3 ou .db. Aplicativos móveis, navegadores, utilitários para desktop, dispositivos incorporados e programas GIS o utilizam porque ele não requer um servidor de banco de dados separado.

Um arquivo SQLite pode conter várias tabelas, índices, views, triggers e metadados. Ele não equivale a uma única planilha, portanto a conversão exige a seleção de uma tabela de origem; tabelas relacionadas geralmente precisam ser exportadas como arquivos DBF separados.

O que é o formato DBF

DBF é o formato de tabela simples associado ao dBASE. Sistemas empresariais antigos, aplicativos GIS, programas estatísticos e ferramentas de banco de dados o utilizam para trocar linhas e colunas com um esquema fixo. Um conjunto de dados Shapefile geralmente inclui uma tabela de atributos DBF junto com seus arquivos .shp e .shx.

DBF é simples e amplamente compatível com softwares legados, mas não preserva índices, relacionamentos, views, triggers, restrições ou o comportamento de transações do SQLite. Arquivos compatíveis com o dBASE tradicional geralmente restringem os nomes dos campos a 10 caracteres, usam larguras de campo fixas, oferecem precisão numérica limitada e representam datas sem informações de hora ou fuso horário.

Como converter os dados

Para uma conversão pontual sem instalar software, use o conversor em 101convert.com: selecione o arquivo SQLite, escolha a tabela necessária se a seleção de tabela estiver disponível, inicie a conversão e baixe o .dbf resultante. Confirme se a saída contém a tabela pretendida; um banco de dados SQLite pode conter várias tabelas. Em vez disso, use um método local para bancos de dados confidenciais ou muito grandes.

Para conversões repetíveis ou controle preciso do esquema, Python pode ler SQLite diretamente e gravar DBF:

  1. Instale Python e o pacote DBF:
    python -m pip install dbf
  2. Inspecione o banco de dados e a tabela:
    sqlite3 source.sqlite
    .tables
    PRAGMA table_info(customers);
  3. Crie export_dbf.py, alterando o nome da tabela, o nome da saída, os campos e os nomes das colunas selecionadas conforme necessário:
import sqlite3
import dbf

source = "source.sqlite"
table_name = "customers"
output = "customers.dbf"

conn = sqlite3.connect(source)
conn.row_factory = sqlite3.Row
rows = conn.execute(f'SELECT * FROM "{table_name}"').fetchall()

fields = (
    "ID N(10,0); "
    "NAME C(80); "
    "EMAIL C(120); "
    "ACTIVE L; "
    "CREATED C(25)"
)

table = dbf.Table(output, fields, codepage="cp1252")
table.open(dbf.READ_WRITE)
try:
    for row in rows:
        table.append((
            row["id"],
            row["name"],
            row["email"],
            None if row["active"] is None else bool(row["active"]),
            row["created"]
        ))
finally:
    table.close()
    conn.close()

Execute o script com python export_dbf.py. As definições dos campos DBF e a ordem da tupla devem corresponder às colunas SQLite selecionadas. As definições típicas incluem C(80) para texto, N(12,2) para valores decimais, N(10,0) para inteiros, L para valores booleanos e D para datas. Converta strings de data do SQLite em objetos date do Python antes de inseri-las em um campo D; use um campo de caracteres quando os dados de hora ou fuso horário precisarem permanecer visíveis.

Um fluxo de trabalho alternativo em duas etapas consiste em exportar uma tabela com o shell de linha de comando do SQLite e, em seguida, importar o CSV em um software para desktop compatível com DBF:

sqlite3 source.sqlite
.headers on
.mode csv
.output customers.csv
SELECT * FROM customers;
.output stdout
.quit

CSV é apenas um formato intermediário e não transporta tipos ou relacionamentos do SQLite. O gravador de DBF ainda exige nomes, larguras e tipos de campos, além de uma página de código apropriada.

Verificações de qualidade e compatibilidade

  • Mapeie os valores dinâmicos do SQLite para um esquema DBF fixo antes da conversão. Verifique intervalos de inteiros, escala decimal, representação booleana, comprimentos de texto e formatos de data.
  • Mantenha os campos de caracteres largos o suficiente para o valor mais longo. Os campos de caracteres DBF tradicionais geralmente são limitados a 254 bytes, e um campo estreito pode truncar os dados ou rejeitar um registro.
  • Renomeie ou mapeie colunas com mais de 10 caracteres, colunas que entrem em conflito após o encurtamento e nomes que contenham caracteres rejeitados pela implementação dBASE de destino.
  • Selecione a página de código correta. cp1252 é adequada para muitos aplicativos em idiomas ocidentais, mas softwares GIS mais antigos podem exigir uma página de código OEM. O suporte a UTF-8 varia entre os leitores de DBF; teste caracteres acentuados e não latinos no programa de destino.
  • Espere possíveis perdas de distinções entre NULL, números de alta precisão, textos longos, informações de fuso horário, índices e estrutura relacional. Preserve o arquivo SQLite original.
  • Compare as contagens de linhas da origem e da saída, textos e datas representativos e totais numéricos depois de abrir o DBF no aplicativo que o receberá.

Comparação de formato: SQLITE vs DBF

Como os formatos SQLITE e DBF se comparam nas propriedades mais importantes para esta conversão.

Comparação dos formatos de arquivo SQLITE e DBF
Propriedade .SQLITE SQLite database .DBF dBASE Database File
Legível em texto simples Não Não
Tipos de dados Tipado Tipado
Estruturas aninhadas Sim Não
Fórmulas Não Não
Múltiplas tabelas ou planilhas Sim Não
Tamanho típico do arquivo Pequeno Pequeno
Padrão aberto Sim Parcialmente aberto
Mais usado para Intercâmbio de dados Intercâmbio de dados
Introduzido 2000 1983
Desenvolvedor D. Richard Hipp / SQLite Consortium Ashton-Tate / dBASE, Inc. (format origin)
Tipo MIME application/vnd.sqlite3 application/x-dbf

O banco de dados atualmente não contém nenhum conversor de arquivo sqlite.

Perguntas frequentes

O conversor de SQLITE para DBF é gratuito?

Sim, converter SQLITE para DBF no 101convert.com é totalmente gratuito. Não é necessário cadastro, e-mail nem instalação. Se você precisa de um limite de tamanho de arquivo maior ou quer converter mais arquivos de uma vez, veja nossos planos.

Qual o tamanho máximo do meu arquivo SQLITE?

Você pode enviar arquivos SQLITE de até 50 MB e converter até 20 arquivos de uma vez em um único lote.

O que acontece com os arquivos enviados?

Os arquivos são processados automaticamente e excluídos dos nossos servidores poucos minutos após a conversão. Nunca visualizamos nem compartilhamos seus arquivos.

Preciso instalar algum programa para converter SQLITE para DBF?

Não. A conversão de SQLITE para DBF é feita totalmente online no navegador e funciona no Windows, Mac, Linux, Android e iPhone.

A conversão falhou?

Na maioria dos casos, a causa é um formato de arquivo incorreto. Envie um arquivo SQLITE válido para esta conversão de SQLITE para DBF. Às vezes, o problema também pode estar do nosso lado. Analisamos falhas de conversão recorrentes e desativamos ou corrigimos o conversor se detectarmos algum defeito.