2009-11-30 23 views
14

La macchina di sviluppo su cui lavoro ha Ubuntu Jaunty Jackalope come sistema operativo. Mi sono stati presentati i dati per un progetto su cui sto lavorando sotto forma di un file .accdb creato da Microsoft Access. Non possiedo una copia di Microsoft Access. Ho installato Open Office e sarei disposto a installare qualsiasi pacchetto software disponibile sul mio sistema operativo. C'è un modo per aprire o trasformare questo file in modo da poter visualizzare e modificare i dati sul mio computer? Esiste un altro formato che il database di Access possa essere salvato come quello che sarei in grado di aprire?Come aprire un file .accdb in Ubuntu?

+0

Cf https://askubuntu.com/questions/342925/opening-an-accdb-file-in-ubuntu – Nemo

risposta

13

Sono disponibili due strumenti open source, tuttavia funzionano solo su file in formato MDB. Puoi chiedere al fornitore del file ACCDB di dartelo in formato MDB?

MDB Tools è un set di librerie e utilità open source per facilitare l'esportazione di dati dai database MS Access (file mdb) senza utilizzare le DLL Microsoft.

Jackcess è una libreria Java pura per la lettura e la scrittura nei database MS Access. Fa parte del progetto OpenHMS di Health Market Science, Inc.. Non è un'applicazione. Non c'è GUI. È una libreria, progettata per altri sviluppatori da utilizzare per creare applicazioni Java. Sembra essere molto più recente degli strumenti MDB, è più attivo e ha supporto per la scrittura.

-6

Non sono sicuro se ci sono strumenti nativi, ma è sempre possibile installare una copia di Windows e installare una vista libera per i file accdb o installare una versione di prova di Access.

+6

sì, puoi _always_installare windows. – Malfist

+0

Questa è la risposta costosa a cui stavo cercando di stare lontano. – pgwillia

0

Immagino che vogliate estrarre i dati dalle tabelle, non il codice dai moduli. Non so in modo specifico Ubuntu, ma suppongo che sia possibile connettersi al file di accesso utilizzando una connessione ODBC (o, se disponibile, la connessione OLEDB) ed estrarre i dati? A seconda del tipo di connessione, potrebbe essere necessario conoscere i nomi delle tabelle per poterle importare.

+0

Jet/ACE viene eseguito solo su Windows, quindi è necessario disporre di un'altra libreria per replicare la funzionalità offerta da Jet/ACE. Tony ha offerto tutti quelli di cui sono a conoscenza. –

0

Microsoft Access Runtime è un software gratuito. Puoi installarlo in Ubntu usando Wine e quindi aprire il database accdb.

+1

Il runtime non fornisce strumenti per modificare un database. Permette solo di eseguire un'applicazione integrata in Access. Inoltre, l'AppDB del vino valuta A2007 completo come solo livello di supporto Bronze (http://appdb.winehq.org/objectManager.php?sClass=version&iId=16862), ma quello è per la versione completa non per il runtime (presumo). –

10

Jackcess ora supporta tutto da Access 97 (sola lettura), 2000, 2003, 2007 e 2010 (lettura-scrittura), entrambi i file .mdb e .accdb.

Dumping il file può essere facile come

import com.healthmarketscience.jackcess.*; 
import java.io.*; 
public class AccessExport { 
    public static void main(String []args) throws IOException { 
    System.out.println(Database.open(new File(args[0])).getTable(args[1]).display()); 
    } 
} 

(ovviamente, è necessario un compilatore java, libcommons-logging-java, libcommons-lang-java e si deve passare il nome del file con estensione accdb come il primo e il nome della tabella come secondo parametro).

-Marcel