Estou procurando ajuda sobre o Microsoft Access e design de banco de dados.
Tenho vindo a desenvolver uma aplicação de base de dados em Microsoft Access para uso na minha organização. Eu trabalho em um hospital e temos uma maneira muito antiquada (!) de acompanhar onde nossos pacientes estão no hospital e o que há de errado com eles. Criamos um documento diário do Word que é armazenado em uma unidade compartilhada em uma LAN. Como pode ser imaginado - isso se torna um pesadelo quando se trata de coisas como tentar manter algum tipo de trilha de auditoria!
Minha solução alternativa é um banco de dados relacional, dividido em um 'front-end' com consultas, formulários e relatórios e um 'back-end' composto por 15 tabelas. Ambos são arquivos Access DB que estão contidos em uma pasta na unidade de rede. A estrutura geral do banco de dados não é muito complexa - é essencialmente uma tabela contendo detalhes do paciente e outras tabelas contendo detalhes relativos a detalhes do encontro, exames de sangue, resultados de exames, etc. número hospitalar único. As listas de pacientes são essencialmente relatórios embutidos no front-end, com base em consultas que extraem pacientes que estão atualmente marcados como 'admitidos' no banco de dados.
Ele funciona razoavelmente bem quando um usuário está usando o banco de dados e é executado rapidamente quando executado em uma máquina local, mas o problema é - é frustrantemente lento - e às vezes nem é executado (fazendo com que o MS Access pare de responder e crash) -- quando mais de um usuário tenta acessar o front-end através da unidade de rede.
Eu estou querendo saber se há algo faltando em relação a como posso otimizar o banco de dados para executar em uma LAN? Ou se isso é uma limitação técnica do acesso ao MS e se devo desviar minha energia para uma solução diferente (por exemplo, SQLite com um frontend VB)? Infelizmente, usar qualquer coisa que não seja uma solução baseada em arquivo compartilhado não é uma opção, pois minha organização não a suporta (por exemplo, um servidor MySQL dedicado).
Grato por seus pensamentos!