Galera,
fiz uma aplicação em Java toda em NetBeans e queria saber como colocar pra ela acessar o banco de Dados (ACCESS) na rede, onde vários usuários possam ler e editar os dados do BD.
Vlw!
Colocar BD em rede
7 Respostas
Use algum outro banco de dados que não o Access se quiser acesso multiusuário.
O Access até permite tal acesso, mas como não é muito confiável (se algum dos programas parar de funcionar enquanto estiver acessando a base Access, pode corromper a base, já que cada programa que acessa os arquivos do Access é responsável por fazer as modificações, o que é um processo pouco confiável), não aconselharia fazer isso a menos que queira ter dores de cabeça a médio prazo.
Se quiser continuar a usar um banco de dados gratuito da própria Microsoft, pode tentar usar o SQL Server Express Edition. Dê uma olhada neste documento aqui:
Use algum outro banco de dados que não o Access se quiser acesso multiusuário.
Antes de alguém me dizer que é plenamente possível usar o MS Access como multiusuário, eu digo que normalmente sistemas com MS Access multiusuário sempre costumam ter uma opção nos programas que é a de efetuar reparos no banco de dados. (O próprio MS Access tem uma opção dessas no menu). Imagine se isso é uma “coisa boa”.
Antes de alguém me dizer que é plenamente possível usar o MS Access como multiusuário, eu digo que normalmente sistemas com MS Access multiusuário sempre costumam ter uma opção nos programas que é a de efetuar reparos no banco de dados. (O próprio MS Access tem uma opção dessas no menu). Imagine se isso é uma “coisa boa”.
Sem falar nos outros problemas, como: O Access se comporta mal ao atingir 2Gb. Parece que corrigiram isso na versão 2007, mas nunca fiz testes para confirmar. O Access controla as restrições de acesso através de um arquivinho extra, criado assim que o banco é aberto. Já tive casos de uma aplicação dar crash e o banco ficar inacessível até que eu reiniciasse esse computador, entrasse em modo de segurança e apagasse esse arquivo.
Por que a empresa “exigiu” que você usasse access? Se a base é multi-usuário, você deve convencê-los de que é uma péssima idéia usar um banco pequeno, portátil e mono-usuário. É tão boa idéia quanto tentar vencer uma corrida de fórmula um, usando um carro popular 1.0.
Antes de alguém me dizer que é plenamente possível usar o MS Access como multiusuário, eu digo que normalmente sistemas com MS Access multiusuário sempre costumam ter uma opção nos programas que é a de efetuar reparos no banco de dados. (O próprio MS Access tem uma opção dessas no menu). Imagine se isso é uma “coisa boa”.
Sem falar nos outros problemas, como: O Access se comporta mal ao atingir 2Gb. Parece que corrigiram isso na versão 2007, mas nunca fiz testes para confirmar. O Access controla as restrições de acesso através de um arquivinho extra, criado assim que o banco é aberto. Já tive casos de uma aplicação dar crash e o banco ficar inacessível até que eu reiniciasse esse computador, entrasse em modo de segurança e apagasse esse arquivo.
Por que a empresa “exigiu” que você usasse access? Se a base é multi-usuário, você deve convencê-los de que é uma péssima idéia usar um banco pequeno, portátil e mono-usuário. É tão boa idéia quanto tentar vencer uma corrida de fórmula um, usando um carro popular 1.0.
Acho que mobilete seria a analogia mais adequada no contexto. =P
Mesmo que eles queiram portabilidade, HSQLDB é uma opção muito mais plausível.
TBM pensei em tudo isso q me disseram , mas o BD já tá todo modelado, tenho q começar to zero!!!
Nesse caso torna-se uma melhor solução o MYSQL?
E com MYSQL como posso conectá-lo em rede juntamente com a aplicação?
FLW!
TBM pensei em tudo isso q me disseram , mas o BD já tá todo modelado, tenho q começar to zero!!!
Como começar do zero? Se você fez as coisas direito, basta importar as tabelas - acho que o próprio MS Access tem um assistente de exportação para o SQL Server Express (ou talvez seja o contrário). Talvez você tenha de revisar um pouco suas queries.
No caso do MS SQL Server (normal ou Express), Oracle, MySQL, PostgreSQL, Firebird etc. esses bancos são feitos para trabalhar em rede.