mdbtools mdb datos archivos abrir linux ms-access

mdb - Llene una base de datos de MS Access en Linux



mdb viewer ubuntu (10)

¿Hay alguna forma de crear una base de datos de Access / Jet desde Linux?

Absolutamente. UCanAccess es un controlador Java JDBC puro, de fuente abierta y pura que puede crear / leer / escribir bases de datos Access 2000+ (solo lectura para Access 97) en cualquier máquina que ejecute Java. Puede encontrar más información sobre cómo usarlo con Java aquí:

Manipular una base de datos de Access desde Java sin ODBC

Si prefiere trabajar con Python, puede usar UCanAccess con Jython o JayDeBeApi como se ilustra en mi respuesta aquí .

¿Hay alguna forma de crear una base de datos de Access / Jet desde Linux?

Estoy tratando de alimentar datos desde un servidor de aplicaciones Linux (back-end mysql) y no he encontrado ninguna herramienta que me permita hacer esto, parece que debería haber algo.

Si no puedo crear una base de datos, ¿hay alguna manera de insertarla en un archivo de base de datos de Access existente desde Linux?

Herramienta CLI, envoltorio para archivo de comando SQL, biblioteca C, biblioteca Ruby, ¿algo?

Gracias.


  1. Si desea crear una base de datos de acceso (archivo mdb) desde cero, necesitará algunos dll de Microsoft Office, así que creo que puede olvidarlo.

  2. Si su idea es insertar / manipular datos en un archivo Access mdb, necesitará un controlador específico para el tipo de conexión que desea usar. Creo que su elección será básicamente entre ODBC y OLEDB. A continuación, puede utilizar esta conexión para modificar sus datos (INSERTAR, ACTUALIZAR, ELIMINAR), extraerlos (SELECCIONAR) e incluso manipular la estructura de su base de datos a través de las instrucciones DDL (CREAR, BAJAR, etc.).


¿Es factible que edite su base de datos de acceso en Windows para que use tablas vinculadas que luego están vinculadas a un archivo de texto externo, archivo XML, documento HTML, etc.?

En Office2007 use la pestaña "Datos externos" y luego seleccione "Archivo de texto", "Archivo XML", etc. Simplemente asegúrese de seleccionar el botón de opción "Vincular a la fuente de datos creando una tabla vinculada". Si primero elimina la tabla existente y crea una tabla vinculada con el mismo nombre, puede engañar a su aplicación para que vea el archivo de texto a través de Access como proxy.

De esta forma, podría actualizar fácilmente el archivo externo desde su aplicación de Linux y su aplicación debería ver esos datos cuando interactúa con la base de datos de acceso.


¿Por qué no usar un servicio web? Podría ejecutar un servicio ASP (o lo que sea) en una máquina con Windows, y podría construir el archivo .mdb requerido usando ODBC. Entonces su aplicación Linux podría cargar los datos brutos y recibir un .mdb en respuesta.

O, como alternativa, solo ejecuta toda la secuencia de comandos en Windows. Puede instalar cygwin y / o ActiveSate perl y acceder a los controladores ODBC de Windows (incluido Access) desde allí.


Hay una biblioteca java llamada jackcess que puede escribir en archivos Access mdb desde cualquier plataforma que pueda ejecutar un jvm.


Para crear una base de datos de MS Access en Linux se puede hacer desde Windows.

  1. Configurar un recurso compartido SMB en Linux
  2. En Windows, cree una unidad asignada a su recurso compartido SMB
  3. Crear una base de datos de Access 3.1 Si tiene instalado MS Access, simplemente puede crear una nueva base de datos en el recurso compartido. 3.2 Si no tiene instalado MS Access pero tiene un controlador ODBC de MS Access en Windows, simplemente cree un nuevo origen de datos ODBC de Microsoft Access; esto le dará la opción de crear una base de datos.

A continuación, podría utilizar como Easysoft Access ODBC Driver para escribir datos en su base de datos.

De forma alternativa, podría utilizar otra herramienta Easysoft, el Easysoft ODBC-ODBC Bridge . Esto le permitirá mantener su base de datos de Access en Windows pero le permitirá realizar llamadas ODBC desde su aplicación Linux.


Puede ejecutar Access 2002 en el sistema Linux utilizando Crossover Office y automatizarlo a partir de un script. (Por ejemplo, puede escribir algunos VBScript y ejecutarlos usando wscript.exe en CrossOver).

Últimamente, estoy haciendo esto para algunas bases de datos y funciona muy bien. Envíeme un correo electrónico si necesita ayuda para configurarlo.


MDB Tools proporciona:

  • una biblioteca de C
  • un conjunto de herramientas de línea de comandos
  • un controlador ODBC [unixODBC] (para http://www.unixodbc.org/ ) que a su vez tiene envoltorios para otros idiomas

Es gratis y de código abierto.


EasySoft tiene un controlador ODBC que podría usarse para insertar datos en una base de datos existente de MS Access.

Si puede, cambiaría Access para SQL Server Express (descarga gratuita), luego puede usar el controlador ODT FreeTDS para hablar desde Linux o con uno de los otros controladores ODBC comerciales disponibles para acceder a MS SQL Server desde Linux.


podría ser una pregunta tonta, pero ¿por qué acceder? Tengo que asumir que esta información necesita llegar a Windows en algún momento? Puede haber otras formas de resolver este problema. si el acceso db se va a utilizar en casa, puede configurar una conexión a MySQL desde Access que se ejecuta en Windows y obtener los datos de esa manera ... si el archivo de datos se va a desconectar, puede intentar crear una coma separada archivo de texto con los datos, pero déle una extensión .xls - en una máquina de Windows esto hará que se abra en Excel, con lo que muchos usuarios estarían de acuerdo.