Pergunta

Estou atualizando um sistema de inventário para uma loja de jóias que foi originalmente construída com o MS Access. O aplicativo armazena itens, clientes, fornecedores e exibe dados sobre itens armazenados. A ferramenta de relatório deve ser considerada para gerar relatórios para itens em um formato imprimível.

O sistema deve ser construído em C#, mas ainda não tomei a decisão para o mecanismo de banco de dados que devo usar para este aplicativo. O que você sugere?. Pensei no SQLite, mas preciso ter em mente que os itens de migração do banco de dados antigos para o novo atualizado é uma obrigação. E como foi originalmente construído com o Access MS. Devo ficar com o MS Access e construir meu aplicativo com ele?.

EDIT: Este é um único sistema de usuário.

Foi útil?

Solução

Para aplicativos de desktop de um usuário único em um ecossistema da Microsoft, considere Edição compacta do SQL Server em vez do produto de servidor completo. Aqui está a parte relevante da visão geral da Microsoft:

O Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) foi projetado para desenvolvedores que precisam de peso leve, na solução de banco de dados relacional de processo para seus aplicativos que podem ser desenvolvidos e implantados na área de trabalho e também em dispositivos móveis. O SQL Server Compact Edition Runtime pode ser usado para desenvolver e implantar aplicativos no desktop.

A SQL Server Compact Edition é um mecanismo de banco de dados relacional poderoso, mas leve, que facilita o desenvolvimento de aplicativos de desktop, apoiando a sintaxe familiar de linguagem de consulta estruturada (SQL) e fornecendo um modelo de desenvolvimento e API consistente com o SQL Server.

Algumas de suas limitações (sem transações aninhadas, por exemplo) são descritas em seu artigo da Wikipedia e comparações com Outros bancos de dados incorporados abundam (Até onde eu sei, não há um consenso sobre a melhor opção).

pelo menos uma pergunta abordando a migração do acesso e um pôster aqui Links para uma lista de ferramentas SQL Server CE, incluindo vários tipos de software de migração.

Outras dicas

O SQL Server Express é uma boa opção se você deseja manter as tecnologias MS. Como sua conversão será uma, você pode fazer isso de várias maneiras - procurando uma ferramenta de conversão de banco de dados (parece que existem alguns deles por aí) ou até escrever o seu, usando DTS, SSIS ou artesanal código, se você precisar.

Como você está usando o C#, o SQL Server parece ser um candidato lógico; O MySQL também é uma boa escolha.

Eu não consideraria o uso de ms-acesso ou sqllite em um aplicativo de produção; Muitas desvantagens/limitações - veja tudo isso por exemplo.

Esta decisão depende de muitos fatores. Como quantos usuários simultâneos acessarão este aplicativo (o acesso não permite mais de 5).

  • Qual é o tamanho do banco de dados?
  • Quanto crescimento você espera?
  • Quais recursos você precisa além do armazenamento básico de dados?
  • Qual é o orçamento?

As respostas a essas perguntas ajudarão você a selecionar o produto certo. Existem muitos diferentes por aí. Até agora, fiquei muito satisfeito com o SQL Server e o MySQL (que é gratuito). Eu evitaria o Oracle, embora achasse que era um aborrecimento trabalhar e geralmente um monte de lixo.

Editar

Com base no seu último comentário, eu iria com o SQL Server Express com serviços avançados http://www.microsoft.com/downloads/details.aspx?displaylang=en&familyid=b448b0d0-ee79-48f6-b50a-7c4f028c2e3d. Este produto ainda é gratuito. A única limitação é que o banco de dados não pode ser maior que 4 gigabytes ou algo assim. Eu espero que isso ajude.

Dê uma olhada no PostgreSQL, http://www.postgresql.org/

É grátis, rápido e tem fornecedores para .NET

O SQL Server, então você pode adicionar serviços de relatório e o caminho da migração do acesso deve ser fácil. Você pode até começar com a Edição Express.

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