Как открыть файл .accdb в Ubuntu? - PullRequest
16 голосов
/ 01 декабря 2009

В качестве операционной системы, на которой я работаю, используется Ubuntu Jaunty Jackalope. Мне представили данные для проекта, над которым я работаю, в виде файла .accdb, созданного Microsoft Access. Я не владею копией Microsoft Access. У меня установлен Open Office, и я хотел бы установить любой программный пакет, доступный для моей операционной системы. Есть ли способ открыть или преобразовать этот файл, чтобы я мог просматривать и редактировать данные на моем компьютере? Есть ли другой формат, в котором база данных Access может быть сохранена так, чтобы я мог ее открыть?

Ответы [ 8 ]

15 голосов
/ 01 декабря 2009

Доступны два инструмента с открытым исходным кодом, однако они работают только с файлами формата MDB. Вы можете попросить поставщика файла ACCDB предоставить его в формате MDB?

MDB Tools - это набор библиотек и утилит с открытым исходным кодом, облегчающих экспорт данных из баз данных MS Access (файлы mdb) без использования DLL-библиотек Microsoft.

Jackcess - это чистая библиотека Java для чтения и записи в базы данных MS Access. Он является частью проекта OpenHMS от Health Market Science, Inc. Это не приложение. Там нет GUI. Это библиотека, которую другие разработчики могут использовать для создания приложений Java. Он выглядит намного новее, чем инструменты MDB, более активен и поддерживает запись.

12 голосов
/ 19 ноября 2012

Jackcess теперь поддерживает все: Access 97 (только для чтения), 2000, 2003, 2007 и 2010 (чтение и запись), файлы .mdb и .accdb.

Сброс файла может быть так же просто, как

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());
  }
}

(конечно, вам нужен компилятор java, libcommons-logging-java, libcommons-lang-java, и вы должны передать имя файла .accdb в качестве первого и имя таблицы в качестве второго параметра).

-Marcel

8 голосов
/ 03 ноября 2014

У меня была такая же проблема на экземпляре Ubuntu 14.01 AWS EC2, и я смог выполнить эту задачу (преобразовать файл .accdb в CSV в Ubuntu), используя access2csv . Мне пришлось установить Git , установить Java и установить ant , но затем я смог преобразовать .accdb нужные мне файлы в CSV, набрав :

$ java -jar access2csv.jar myfile.accdb

Используется Jackcess , поэтому вы получаете те же функциональные возможности без необходимости писать собственный код Java для выполнения этой основной задачи. Каждая таблица возвращается в виде собственного CSV файла.

Вы также можете получить доступ к схеме, передав опцию --schema:

java -jar access2csv.jar myfile.accdb --schema

Надеюсь, это полезно. Это, конечно, было для меня.

2 голосов
/ 29 ноября 2018

Хорошим форматом для просмотра и работы в Linux будет CSV.

Поскольку принятый ответ предполагает, что MDB Tools выполняет свою работу. Чтобы экспортировать все таблицы в Linux в формат CSV, попробуйте следующую команду:

mdb-tables -d ',' database.accdb| xargs -L1 -d',' -I{} bash -c 'mdb-export database.accdb "$1" >"$1".csv' -- {}

Вы также можете использовать mdbtools в Windows через WSL (Ubuntu в Windows или Debian в Windows): Затем установите его в консоли с помощью:

sudo apt install mdbtools
1 голос
/ 01 декабря 2009

Это может представлять интерес: Как преобразовать accdb в базу данных postgres

Я не уверен, что Wine подойдет, но это может стоить посмотреть.

0 голосов
/ 01 июля 2010

Microsoft Access Runtime - это бесплатное программное обеспечение. Вы можете установить его в Ubntu с помощью Wine, а затем открыть базу данных accdb.

0 голосов
/ 01 декабря 2009

Полагаю, вы хотите извлечь данные из таблиц, а не код из модулей. Я не знаю конкретно Ubuntu, но я полагаю, вы можете подключиться к файлу доступа с помощью подключения ODBC (или, если доступно, подключение OLEDB) и извлечь данные? В зависимости от типа соединения, вам все равно может понадобиться знать имена таблиц, чтобы импортировать их.

0 голосов
/ 01 декабря 2009

Я не уверен, есть ли какие-либо собственные инструменты, но вы всегда можете установить копию windows и установить бесплатный просмотр для файлов accdb или установить пробную версию Access.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...