Olá pessoal, depois de muito pesquisar 1 semana incansável de pesquisa sem tirar a bunda da cadeira a não ser para ir ao banheiro e comer , consegui achar a solução para colocar o mdb para ler com java + netbeans + ubuntu.
A maioria das pesquisas que fiz em fóruns não ajudaram em quase nada tive que fazer uma busca incansável pois queria acessar “na marra” o mdb pelo ubuntu pois não quero mais ter somente a M$ como SO.Não que a M$ seja ruim mas , a liberdade que o linux te dá é muito grande comparada a adversária. Bem muito vi sobre unixODBC tentei configurar de todo jeito mas ainda não há suporte competente para tal componente, então tive que ir atras de outra alternativa. O Jackcess, bem o Jackcess pelo pouco que to conhecendo, acessa o mdb tranquilamente pelo linux, mas colocar para funcionar é que foi o problema, acessar o tal mdb ao menos foi o primeiro passo e vou colocar o Tuto disso e colocar um ponto final ao menos (“na parte de acesso ao mdb” rsrsrsrsr) , o restante da descoberta iremos compartilhar aqui no fórum. vamos ao que interessa então:
quem quiser saber algo do jackcess acesse http://jackcess.sourceforge.net, a maioria da documentação está em inglês e por isso mesmo a tradução do google não é muito legal pois fica uma tradução meia boca , agora, quem ja tem o ingles fluente rsrsrsrsrs é uma mão na roda.
Passo 1
De uma googlada e baixe os arquivos jackcess-1.1.7.jar e commons-logging-1.0.4.jar
Passo 2
Copie esses dois arquivos para usr/lib
É necessário copiar para dentro desse diretório para não dar erros no java netbeans
Passo 3
No netbeans vai no menu tools-library manager
setar os dois arquivos que foram baixados no diretorio usr/lib
Passo 4
Bem o passo mais almejado: O acesso ao mdb
Com td acima instalado agora fica fácil neh?! pois as Bibliotecas do jackcess jah estão instaladas e prontas para rodar.
Database db = Database.open(new File("/sistema/sistema.mdb"));// abre o mdb
for (String tname: db.getTableNames())//pega o nome das tabelas
{
Table t = db.getTable("tbl_adm");
Map<String, Object> row;
while ((row = t.getNextRow()) != null)
{
for (String colName : row.keySet())
{
System.out.println(row.get(colName));//mostra o conteúdo dos campos
}
}
}
Essa rotina vai mostrar os dados existentes dentro de cada tabela , bem pessoal consegui chegar até aqui daqui em diante podemos criar um Resultset ou aproveitar o mesmo existente. Mas ainda não consegui usar SQL na linguagem espero a colaboração de tds para conseguir desvendar e dar suporte a outras pessoas que estão tendo essa dificuldade.
Obs: Caso haja algum erro no acesso , irá aparecer um erro gigantesco basta olhar o módulo que está dando erro na mensagem e baixar o .jar correspondente.