Czy można otworzyć plik bazy danych Access 2010 bez korzystania z Wine lub VirtualBox?

38

Mam .accdbplik utworzony za pomocą pakietu Microsoft Office 2010 i chcę wiedzieć, czy można go otworzyć za pomocą jakiejś natywnej aplikacji Ubuntu, takiej jak LibreOffice lub OpenOffice, wiem, że LibreOffice ma, LibreOffice Baseale nie wiem, jak otworzyć, a nawet czy jest to możliwe aby otworzyć .accdbplik.

Czy mogę otworzyć .accdbplik bez Wine lub VirtualBox?

Jeggy
źródło

Odpowiedzi:

11

Jak wspomniano tutaj , mówi, że obsługuje pliki Access, ale jeśli przyjrzymy się głębiej , przetestowali tylko w LibreOffice do Office 2007.

Skoro masz Office 2010 Sugerowałbym wypróbowanie tego linku od innych użytkowników przez wygląd to już próbowałem.

Dodatkowo pokazana tutaj zgodność mówi o tym , jak dobra jest LibreOffice Base w odniesieniu do Microsoft Access 2010. Przynajmniej do wersji 3.6.

Jest też pytanie o Ask LibreOffice stronie o tym , że wspomina ten link gdzie jest powiedziane, że format, 2007 różni się od 2010 roku, więc nie będzie działać poprawnie w LibreOffice 3.6 lub poniżej.

Moim jedynym zaleceniem, które nie obejmuje Wine lub VirtualBox, byłoby użycie MS Office 2010 do zapisania pliku Access jako wersji 2007 (jeśli to możliwe) lub w formacie MDB. Przynajmniej podczas gdy LibreOffice pracuje nad poprawą kompatybilności z 2010 r. Ogólnie.

Luis Alvarado
źródło
1
Zauważyłem tutaj ten wiersz : „Ograniczony starszy sterownik„ Microsoft.Jet.OLEDB.4.0 ”działa dobrze do odczytu / zapisu, podczas gdy sterownik„ Microsoft.ACE.OLEDB.12.0 ”tylko czyta; ( fdo # 43187 ). Sterownik działa tylko w systemie Windows . ” - świetnie ...
Wilf
51

Tak, możemy użyć sterownika JDBC UCanAccess do połączenia z bazami danych Access (.mdb i .accdb) w Bazie LibreOffice. Oto jak to zrobiłem na czystej instalacji Ubuntu 14.04 LTS.

Ważna uwaga:  Te instrukcje dotyczą UCanAccess w wersji 3.0.5 i nowszych (w tym w wersji 4.x). Przed kontynuowaniem sprawdź, czy korzystasz z najnowszej wersji UCanAccess, dostępnej tutaj .

Konfiguracja jednorazowa

Najpierw zainstalowałem LibreOffice Base

sudo apt-get install libreoffice-base

Następnie pobrałem UCanAccess ( bin.zipplik) i rozpakowałem go do folderu

~/Downloads/JDBC/UCanAccess

HomeFolder.png

Uwaga: Podczas rozpakowywania pliku dystrybucyjnego pamiętaj o określeniu „Zachowaj strukturę katalogów” (lub podobną, w zależności od narzędzia do rozpakowywania), aby struktura folderów wyglądała jak na powyższym zrzucie ekranu.

Uruchomiłem LibreOffice (nie Base, tylko sam LibreOffice)

LibreOffice.png

i wybierz Narzędzia> Opcje

ToolsOptions.png

Na karcie Zaawansowane kliknąłem przycisk „Ścieżka klasy ...”

ClassPathButton.png

a następnie dodał następujący plik JAR za pomocą przycisku „Dodaj archiwum ...”:

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

ClassPathDialog.png

Zauważ, że jest to plik ucanload.jar w module ładującym / podfolderze, a nie „ucanaccess-xyzjar” w folderze domowym UCanAccess.

Ważne: Musisz zamknąć i ponownie otworzyć wszystkie składniki LibreOffice (lub OpenOffice.org), aby nowa wartość „Ścieżki klasy ...” zaczęła obowiązywać, w tym wszelkie funkcje „szybkiego startu” lub inne powiązane procesy. (Jeśli chcesz grać bezpiecznie, po prostu uruchom ponownie komputer).

Konfiguracja dla jednej bazy danych

Uruchomiłem LibreOffice Base, aw kroku 1 kreatora wybrałem „Połącz z istniejącą bazą danych (JDBC)”

ExistingDatabase.png

Plik Access, którym chciałem manipulować, nazywał się „uca301demo.accdb” w moim folderze Dokumenty, więc w kroku 2 „Adres URL źródła danych” miał

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

a „klasa sterowników JDBC” była

net.ucanaccess.jdbc.UcanloadDriver

BaseJdbcPage.png

W kroku 3 pozostawiłem puste pole „Nazwa użytkownika” i kliknąłem „Dalej >>”.

W kroku 4 zapisałem bazę danych LibreOffice Base jako „accdbTest.odb” w moim folderze Dokumenty.

Po zakończeniu pracy kreator otworzył moją bazę danych LibreOffice i mogłem zobaczyć tabele i zapisane zapytania w pliku .accdb

BaseMainWindow.png

Gord Thompson
źródło
Świetna robota Gord. Masz pomysł, jeśli używasz istniejących sterowników? Mam problem z włączeniem tego do mojego oprogramowania statystycznego do importowania tabel dostępu :)
AdamO
Znakomity! Ale musiałem dodać jackcess-2.1.4.jar i hsqldb.jar do mojej ścieżki klasy Java. (Zrobiłem to, umieszczając je w jdk / jre / lib / ext). Wcześniej otrzymywałem komunikat o błędzie informujący, że sterownik jest uszkodzony.
Lance Holland
To wciąż działa dla LibreOffice 6.2! Dziękuję Ci!
StR