Pergunta

Meu aplicativo atualmente usa o Microsoft Access, mas agora podem ser hospedados em máquinas Linux. Adicionalmente ao ser acessado a partir de vários computadores, um destes pode atualizar os registros (quando o seu ser lido por outros usuários).

Eu também exigem que o banco de dados integrado deve oferecer suporte a consultas SQL complexas - como SQL interior, junta-se, etc

.

Eu tentei SQLite , mas muitas das consultas existentes falhar, ou necessidade de ser fixado ( como em uma consulta simples usando junção interna dos suportes após FROM não foi aceitável para SQLite, e teve de ser removido). RIGHT JOIN também não é suportado.

Eu vim a saber sobre Apache Derby e H2 , mas primeiro preferem sua valiosa opinião.

Editar:

Eu esqueci de mencionar que a minha candidatura é inteiramente escrito em Java.

Editar:

Ao predefinir eu uso mdb Microsoft Access, compartilhada na unidade de rede, fazendo conexão sem DSN a partir de computadores remotos.

Atualizar

Eu fiz testes com o Firebird, e realmente parece muito bom, zero, admin, e compatível com SQL. É rápido, e eu não tinha problemas em nenhuma das consultas típicas que eu poderia tentar nele. Estou muito satisfeito com ele, e espero que vai usá-lo para o projeto para o qual eu levantei essa questão.

Esperamos Advantage Servidor também será bom, mas não conseguiu tempo para analisá-lo. Depois de analisar / usando Firebird não sinto qualquer necessidade de tentar qualquer outra coisa.

Foi útil?

Solução

Eu acho que é Firebird .

Mesmo do Cte são suportados no Firebird 2.1!

Firebird funciona em Windows, Linux, Mac OS ...

Jaybird driver para Java.

Existem algumas boas ferramentas de migração do Access para o Firebird:

Outras dicas

Gostaria de ter um olhar para o Database Server Advantage (sybase.com). Ele roda em Windows, Linux, e NetWare . Nós temos uma aplicação de gestão de contabilidade / projeto comercial para a indústria da construção e mudou para Advantage 6 ou 7 anos atrás. Temos sido extemamente satisfeitos com o desempenho e suporte. Os clientes são muito feliz também.

Você pode encontrar uma descrição bastante detalhada do cumprimento SQL Padrões de Derby aqui: http: // wiki .apache.org / db-derby / SQLvsDerbyFeatures

Nossa empresa está usando Advantage também. Viemos para ele a partir de um href="http://en.wikipedia.org/wiki/XBase" rel="nofollow noreferrer"> XBase fundo

Isso pode ser útil em sua pesquisa: Comparação de sistemas de gerenciamento de banco de dados relacionais

Eu, pessoalmente, gostaria de sugerir tendo um olhar sério Firebird. É multi-plataforma, tem um .NET provedor nativo e suportes a junta que você menciona.

Firebird é o "Comptible para SQL" mais banco de dados incorporado. O motor da versão integrada é o mesmo que a edição do servidor.

Preste atenção que, com Firebird incorporado apenas um cliente por vez pode se conectar ao banco de dados, para que possa abranger vários conexão do mesmo processo, mas não conectar de diferentes processos. Este problema é corrigido no Firebird 2.5 e acima.

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