É possível abrir um arquivo de banco de dados do Access 2010 sem usar o Wine ou o VirtualBox?

38

Eu tenho um .accdbarquivo criado com o Microsoft Office 2010 e quero saber se é possível abri-lo com algum aplicativo nativo do Ubuntu, como o LibreOffice ou o OpenOffice, sei que o LibreOffice possui, LibreOffice Basemas não consigo descobrir como abrir ou se é possível para abrir um .accdbarquivo

Existe alguma maneira de abrir um .accdbarquivo sem o Wine ou o VirtualBox?

Jeggy
fonte

Respostas:

11

Conforme mencionado aqui, ele diz que suporta arquivos do Access, mas, se olharmos mais profundamente, eles só testaram no LibreOffice até o Office 2007.

Desde que você tem um Office 2010 gostaria de sugerir tentar esta ligação uma vez que outros usuários pelo olhar de este já ter tentado.

Além disso, a compatibilidade mostrada aqui diz como o LibreOffice Base é bom quando se refere ao Microsoft Access 2010. Pelo menos até a versão 3.6.

Há também uma pergunta no site Ask Libreoffice sobre isso que menciona esse link, onde se diz que o formato de 2007 é diferente do de 2010, portanto não funcionará corretamente no LibreOffice 3.6 ou abaixo.

Minha única recomendação que não inclui o Wine ou o VirtualBox seria usar o MS Office 2010 para salvar o arquivo do Access como uma versão de 2007 (se possível) ou um formato MDB. Pelo menos enquanto o LibreOffice trabalha para melhorar a compatibilidade com 2010 em geral.

Luis Alvarado
fonte
1
Observei esta linha aqui : 'o driver mais antigo limitado "Microsoft.Jet.OLEDB.4.0" funciona bem para leitura / gravação, enquanto o driver "Microsoft.ACE.OLEDB.12.0" apenas lê; ( fdo # 43187 ). O driver funciona apenas no Windows . - ótimo ...
Wilf 26/06
51

Sim, podemos usar o driver UCanAccess JDBC para conectar-se aos bancos de dados do Access (.mdb e .accdb) no LibreOffice Base. Aqui está como eu fiz isso em uma instalação limpa do Ubuntu 14.04 LTS.

Nota importante:  Essas instruções se aplicam ao UCanAccess versão 3.0.5 e posterior (incluindo a versão 4.x). Antes de continuar, verifique se você está usando a versão mais recente do UCanAccess, disponível aqui .

Configuração única

Primeiro, instalei o LibreOffice Base

sudo apt-get install libreoffice-base

Então eu baixei o UCanAccess ( bin.ziparquivo) e descompactei na pasta

~/Downloads/JDBC/UCanAccess

HomeFolder.png

Nota: Ao descompactar o arquivo de distribuição, certifique-se de especificar "Manter estrutura de diretórios" (ou similar, dependendo da ferramenta de descompactação) para que a estrutura de pastas apareça como na captura de tela acima.

Lancei o LibreOffice (não o Base, apenas o próprio LibreOffice)

LibreOffice.png

e escolha Ferramentas> Opções

ToolsOptions.png

Na guia Avançado, cliquei no botão "Caminho da classe ..."

ClassPathButton.png

e, em seguida, adicionou o seguinte arquivo JAR usando o botão "Adicionar archive ...":

/home/gord/Downloads/JDBC/UCanAccess/loader/ucanload.jar

ClassPathDialog.png

Observe que este é ucanload.jar no carregador / subpasta, não "ucanaccess-xyzjar" na pasta inicial do UCanAccess.

Importante: Você deve fechar e reabrir todos os componentes do LibreOffice (ou OpenOffice.org) para que o novo valor "Caminho da Classe ..." entre em vigor. Isso inclui todos os recursos de "início rápido" ou outros processos relacionados. (Se você quiser jogar pelo seguro, basta reiniciar sua máquina.)

Configuração por banco de dados

Lancei o LibreOffice Base e, na Etapa 1 do assistente, escolhi "Conectar-se a um banco de dados existente (JDBC)"

ExistingDatabase.png

O arquivo do Access que eu queria manipular foi nomeado "uca301demo.accdb" na minha pasta Documentos, portanto, na Etapa 2, o "URL da fonte de dados" era

jdbc:ucanaccess:///home/gord/Documents/uca301demo.accdb

e a "classe de driver JDBC" foi

net.ucanaccess.jdbc.UcanloadDriver

BaseJdbcPage.png

Na etapa 3, deixei o campo "Nome de usuário" vazio e cliquei em "Próximo >>".

Na etapa 4, salvei o banco de dados do LibreOffice Base como "accdbTest.odb" na minha pasta Documentos.

Quando o assistente foi concluído, ele abriu meu banco de dados do LibreOffice e eu pude ver as tabelas e as consultas salvas no arquivo .accdb

BaseMainWindow.png

Gord Thompson
fonte
Ótimo trabalho Gord. Alguma idéia se isso estiver usando drivers existentes? Estou tendo problemas para fazer isso em meu software estatístico para a importação de tabelas de acesso :)
Adamo
Brilhante! Mas eu precisava adicionar jackcess-2.1.4.jar e hsqldb.jar ao meu caminho de classe java. (Fiz isso colocando-os em jdk / jre / lib / ext). Antes disso, recebia uma mensagem de erro informando que o driver estava corrompido.
Lance Holland
Isso ainda está funcionando para o LibreOffice 6.2! Obrigado!
StR