Este é o comando pgdbf que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS
PROGRAMA:
NOME
pgdbf - converte tabelas XBase / FoxPro para PostgreSQL
SINOPSE
pgdbf [-cCdDeEhqQtTuU] [-m memofile] nome do arquivo [indexcolumn ...]
DESCRIÇÃO
PgDBF é um programa para converter bancos de dados XBase - particularmente tabelas FoxPro com memo
arquivos - em um formato que o PostgreSQL pode importar diretamente. É um projeto C compacto com
nenhuma dependência além das bibliotecas Unix padrão. Embora o projeto seja relativamente pequeno
e simples, também é altamente otimizado por meio de perfis - benchmark de rotina muitas vezes
mais rápido do que com outros programas de código aberto. Na verdade, mesmo em sistemas mais lentos, as conversões
são normalmente limitados pela velocidade do disco rígido.
Funcionalidades
PgDBF foi projetado com alguns princípios básicos:
Simplicidade. Este código deve ser compreensível por qualquer pessoa que queira hackea-lo.
Robustez. Cada syscall que pode falhar é verificada quanto ao sucesso.
Velocidade. PgDBF nasceu para ser a conversão mais rápida disponível em qualquer lugar.
Completude. Ele tem suporte total para arquivos de memorando FoxPro.
Portabilidade PgDBF é executado em sistemas de 32 e 64 bits, e ambos little-endian (por exemplo, x86)
e arquiteturas big-endian (por exemplo, PowerPC).
Desempenho
A velocidade do PgDBF é geralmente limitada pela rapidez com que consegue ler seus discos rígidos. Um listrado
RAID de discos rápidos pode manter o PgDBF muito bem alimentado em um sistema de processador único. XNUMX
a área do problema são os arquivos de memorando, que podem se tornar muito fragmentados internamente como memorando
campos são criados, excluídos e atualizados. Para obter melhores resultados, considere colocar o DBF e
Arquivos FPT em uma unidade de RAM para que não haja nenhuma penalidade de busca, como acontece com a rotação forte
drives ou usando um sistema de arquivos como ZFS que armazena em cache de forma agressiva.
Uma tabela particularmente fragmentada de 160 MB com campos de memorando costumava levar mais de três minutos
em um sistema de arquivos FreeBSD UFS2. Mover os arquivos para um disco RAM diminuiu o tempo de conversão
para cerca de 1.2 segundos.
Uma determinada tabela de teste usada durante o desenvolvimento compreende um arquivo DBF de 280 MB e um memorando de 660 MB
Arquivo. PgDBF converte isso em uma tabela PostgreSQL de 1.3 milhão de linhas em cerca de 11 segundos, ou em
uma taxa de quase 120,000 linhas por segundo.
OPÇÕES
-c Gere um CRIAR TABELA declaração para fazer uma tabela com tipos de dados e colunas semelhantes
nomes como o arquivo DBF. Predefinição.
-C Suprimir o CRIAR TABELA declaração.
-d Gere um GOTA TABELA declaração antes do CRIAR TABELA demonstração. Isso é útil
para substituir o conteúdo de uma tabela que já existe no PostgreSQL. Predefinição.
-D Suprimir o GOTA TABELA declaração.
-e alterar o GOTA TABELA declaração para GOTA TABELA IF EXISTE de modo que as versões mais recentes de
PostgreSQL (8.2+) só tentará eliminar a tabela se já estiver definida.
O PostgreSQL retornará um erro ao tentar eliminar uma tabela que não existe
a menos que IF EXISTE é usado. Predefinição.
-E Não use o IF EXISTE modificador para GOTA TABELA para compatibilidade com versões de
PostgreSQL anterior a 8.2.
-h Imprima uma mensagem de ajuda e saia.
-m memorando
O nome do arquivo de memorando associado (se necessário).
-n Crie campos NUMERIC com o tipo NUMERIC. Predefinição.
-N Crie campos NUMERIC com o tipo TEXT. Use isto se as linhas contiverem dados numéricos inválidos
em campos NUMERIC (que são essencialmente campos CHARACTER nos bastidores).
-p Mostra uma barra de progresso durante o processo de conversão.
-P Não mostra uma barra de progresso. Predefinição.
-q Coloque o nome da tabela entre aspas em declarações como "CREATE TABLE",
"DROP TABLE" e assim por diante. Isso é útil nos casos em que o nome da tabela é um
Palavra reservada do PostgreSQL, e quase certamente inofensiva em todos os outros casos.
-Q Não coloque o nome da tabela entre aspas. Predefinição.
-s codificação
Defina a codificação usada no arquivo de entrada. Quando fornecido, a saída será convertida de
essa codificação para UTF-8. As codificações suportadas dependem da sua versão do iconv
biblioteca. Disponível apenas se sua cópia de PgDBF foi compilada com suporte iconv.
-t Envolva todo o script em uma transação. Predefinição.
-T Remova a transação do wrapper. Geralmente não é uma boa ideia, pois pode causar
a mesa apareça completamente vazia para outros clientes durante a cópia de dados
Estágio. Se todo o processo ocorre dentro de uma transação, a atualização é atômica e
outros clientes terão acesso total a todos os dados da tabela o tempo todo.
-u Um problema TRUNCAR TABELA declaração para limpar o conteúdo de uma tabela antes de copiar
dados nele.
-U Suprimir o TRUNCAR TABELA demonstração. Predefinição.
OPÇÃO NOTAS
A -c e -d argumentos são incompatíveis com -u pois é inútil truncar um novo
mesa criada. Especificando -c or -d irá desativar o TRUNCAR TABELA declaração como se -U
foi dado. Da mesma forma, usando o -u argumento irá desativar o CRIAR TABELA e GOTA TABELA
declarações como se -C e -D foram dados.
Use pgdbf online usando serviços onworks.net