Pergunta

O que aplicações ou ferramentas você usa para entrada de dados em seu banco de dados? Eu estou tentando melhorar o nosso sistema existente (pesado) que usa um sistema baseado php web para inserir dados de um ... item ... a ... a ... tempo.

Minha solução atual para isso é usar uma planilha. Ele funciona bem com texto e números que são legível, mas não com chaves estrangeiras que são usados ??para se juntar com linhas de outra tabela a.

.

Imagine que eu quero uma linha de dados para incluir o que cidade alguém vive na coluna segurando este é id_city, que é introduzido para a tabela de "cidade" que tem duas colunas: id (serial) e nome (texto).

eu imagino ser capaz de estender as capacidades de planilha para incluir Menu suspenso para cada linha da coluna id_city que permitiria ao usuário selecionar qual cidade (exibindo o texto dos nomes de cidades), mas, na verdade, armazenar o id cidade escolhida. Desta forma, a planilha iria:
(1) mostram uma grande quantidade de dados em cada tela e
(2) pode ser exportado como um arquivo CSV e jogado aos nossos scripts existentes que manualmente inserir linhas no banco de dados.

Eu tenho jogado ao redor com MS Excel e Access, bem como a suíte de OpenOffice, mas não encontrei algo que me dá a funcionalidade menciono acima.

Outros itens da minha lista de desejos:
(1) buscar dinamicamente o nome das cidades que podem ser selecionados pelo usuário.
(2) permitir que o usuário para empurrar os dados diretamente no backend (não via arquivos / scripts externos.
(3) Se qualquer uma das colunas das linhas de dados é alterado no backend, o usuário pode atualizar os dados na tela para refletir as alterações recentes.

Você sabe como eu poderia melhorar o processo de entrada de dados? Quais ferramentas você usa? Eu uso PostgreSQL para o backend e ter acesso ao MS Office, OpenOffice, bem como soluções baseadas na web. Eu adoraria uma solução que é flexível, poderoso e não requer muito tempo para desenvolver ou implantar (eu sei, sonhe ...)

Eu sei que pgadmin3 tem funcionalidade semelhante, mas pelo que tenho visto, é mais uma ferramenta administrativa ao invés de algo para os usuários a utilização.

Foi útil?

Solução

Como j_random_hacker observou, eu usei MS Access durante anos (desde Access 97) para ligar a uma fonte de dados ODBC.

Você pode fazer isso através de links para tabelas externas: (em Access 2010:)

New -> Blank Database
External Data -> ODBC Database -> Link to Data Source
Machine Data Source -> New -> System Data Source -> Select Driver (Oracle, or whatever) -> Finish
Enter a new name for your DSN, the all of the connection parameters, then click OK
Select newly created DSN, hit ok.

Você pode fazer muito, uma vez Access vê sua tabela externa como uma tabela vinculada, incluindo classificação, filtragem, etc. Há uma ressalva: tanto quanto eu posso dizer, todas as operações acontecem no lado do cliente, a menos que você estiver usando uma pass-through consulta. Isso é bom se você está olhando para uma mesa com 3000 registros. Com 2.000.000 de registros, isso dói. Para ser claro, todos os dados na tabela resume-se à estação de trabalho, para todas as tabelas sendo juntadas, e a junção acontece do lado do cliente, não do lado do servidor.

Outras dicas

Existem ferramentas geralmente independentes para gerenciamento básico de banco de dados -. Por exemplo, para Oracle e MySQL uma ferramenta gratuita chamada SQL sufixos de desenvolvedor para a entrada de dados básicos de banco de dados

Para os tipos mais complexos (especialmente envolvendo CLOBs) Eu normalmente pode bater um pedido acompanhado em Java + SWT em um dia se já temos o modelo e DAOs disponível no lado do Java. Sim, você tem que colocar algum esforço, mas se ele vai ser usado regularmente no futuro, então é provavelmente vale a pena.

No seu caso (bem, o caso em que você tem importações em massa de dados) batendo um pouco de Perl que lê a partir do CSV e faz a cidade lookup id seria trivial de implementar. Talvez um desperdício para uma coisa one-off? Depende da quantidade de dados a importação.

Eu ficaria surpreso se o MS Access não pode fazer o que você está procurando - este é basicamente o exata caso de uso para ele. Ou seja, rapidamente jogando juntos uma interface agradável para um simples aplicativo CRUD DB que a planilha não chega a esticar a.

Esta é uma resposta, tecnicamente, mas não uma recomendação:

Eu usei Excel e SSIS para a importação de arquivos de entrada de dados simples em MS SQL, mas não é adequado -. Há muito pouca capacidade de controlar os dados e SSIS é muito sensível, especialmente quando se trabalha com Excel

MS Access não funciona bem com alguns bancos de dados não-Microsoft. Há um open-source equivalente chamado Apache OpenOffice Base de que você pode querer tentar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top