Pergunta

Eu estou escrevendo um aplicativo DB distribuído com um fim de acesso frontal. Essencialmente um mde com alguns formulários e relatórios. Devo usar um MDB de acesso para manter o mesas de back-end ou uso MySQL ou algum outro banco de dados?

Foi útil?

Solução

Pessoalmente eu gostaria de usar o SQL Server Express ou MySQL. Eles dimensionar melhor do que um backend acesso e quando você está pronto para se afastar do Access, você pode fazê-lo sem ter que converter o backend, bem como o front-end.

Outras dicas

SQL Server Express pode ser uma boa solução, mas tem algumas limitações muito estritas, também. Além disso, você precisa ter certeza de que sua licença se adapta às suas necessidades.

Se as suas necessidades de simultaneidade e escalabilidade são limitados (dizer 10-15 usuários simultâneos com quantidades moderadas de I / O), não há nada de errado em usar um back-end MDB. Eu não sou um fã Access, mas eu sei por experiência que isso geralmente trabalho.

Além disso, a administração de um back-end MDB é quase de graça, enquanto o MySQL ou SQL Server Express vai exigir algum trabalho DBA real. Não há nenhum ponto indo com algo maior se você estiver razoavelmente certo de que você nunca vai precisar.

Para implantação real que você iria querer usar um banco de dados real, não o DB Access Engine / Jet.

Dito isto, a grande coisa sobre o acesso é que ele tem uma ferramenta (olhar no menu) para dividir um único arquivo MDB em banco de dados e código. Faça isso, e em seguida, apontar o código na nova fonte de dados.

Você pode ter que modificar ligeiramente algumas consultas.

Eu acho SQL Server Express seria sua melhor opção. MySQL é uma boa DB para o seu backend, mas integra melhor acesso com SQL Serv Express (de MS curso quer que você usá-lo de próprios produtos, mesmo que seja livre) e edição Express é muito bom considerando que é gratuito. Se as extremidades de aplicações necessitando de escalar grande momento posterior, em seguida, uma atualização para o pago para SQL Server é simples e o motorista é o mesmo.

Eu acho que você deve definir o que você quer dizer com "Aplicação DB distribuída." Esse termo como eu entendo que normalmente colocaria Jet fora da corrida para o final de volta.

Ninguém pode realmente responder a sua pergunta sem indicação da população de usuários, ambiente operacional, os requisitos de segurança e confiabilidade, etc. Se é para 10 usuários e não é de linha de negócios de dados, a fim Jet volta poderia ser perfeito e tornar o desenvolvimento e administração de um pedaço de bolo. Se você tiver 100 usuários, você definitivamente quer ir com uma extremidade servidor back. Se você tem considerações de segurança importantes (por exemplo, HIPAA) você provavelmente quer ir com um banco de dados que tenha a segurança de nível de servidor embutido e não ir com Jet.

Mas há uma abundância de aplicações onde um final Jet volta seria muito bem -. Rápida e completamente confiável

Há uma terceira opção: você poderia usar algo como EQL Dados de modo que você pode usar a infra-estrutura de acesso normal, mas dar a cada pessoa a sua própria cópia (e sincronização entre eles) para ajuda com problemas de escalabilidade multi-usuário. Dessa forma, você não precisa ir para a complexidade de usar um "real" DB backend.

A escolha MySQL você precisa instalar o MySQL Connector (ODBC) em cada cliente. SQL Server Express seria uma boa escolha se você não gosta de distribuir componentes Adicionais, mais, ADO funciona melhor com MS SQL.

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