Abrir o convertir MDB

classic Classic list List threaded Threaded
7 messages Options
Narcis Garcia Narcis Garcia
Reply | Threaded
Open this post in threaded view
|

Abrir o convertir MDB

Hola, uso Debian 9 y he dado muchas vueltas para lograr abrir una base
de datos de Microsoft Access con LibreOffice.
Ya probé con mdbtools/odbcinst pero no lo consigo.

Ahora he puesto en marcha una máquina virtual con Windows e instalado MS
Office y LibreOffice en ella, con la intención de convertir la base de
datos de MDB a ODF.
Pero cuando abro la base de datos MDB con LibreOffice (que es fácil y
directo), aunque crea una nueva base de datos OpenDocument todas las
tablas no son más que vínculos al fichero MDB.
Mi objetivo ahora es lograr importar todas las tablas de la base de
datos MDB a un fichero OpenDocument que me pueda llevar con datos y todo
(que no sean enlaces).

No encuentro manera de «importar base de datos» al estilo de Microsoft
Access, ni tampoco opciones para transportar las tablas que veo con
LibreOffice Base (que son vínculos).

¿Alguien conoce una solución de poca ingeniería?

Gracias.

--


__________
I'm using this express-made address because personal addresses aren't
masked enough at this mail public archive. Public archive administrator
should fix this against automated addresses collectors.

--
Para instrucciones sobre darse de baja envíe un mensaje a: [hidden email]
¿Problemas? https://es.libreoffice.org/recibe-ayuda/listas-de-correo/baja/
Guías para envío + más: https://wiki.documentfoundation.org/Netiquette/es
Archivo de la lista: https://listarchives.libreoffice.org/es/users/
Privacy Policy: https://www.documentfoundation.org/privacy
jucasaca jucasaca
Reply | Threaded
Open this post in threaded view
|

RE: Abrir o convertir MDB

A ver si así te vale así, en tu sistema virtual:
    • Abre la base de datos de Access con LibreOffice
    • Crea una base de datos nueva en blanco con Base, da igual que la base de datos nueva sea HSQLDB o FireBird, aunque creo que FireBird dará  menos problemas. Para poder crear las bases de datos FireBird necesitas tener activadas las funcionalidades experimentales (Herramientas > Opciones > LibreOffice > Avanzado > Funcionalidades opcionales > Activar funcionalidades experimentales)
    • Tienes que tener las dos bases de datos abiertas a la vez (reparte la pantalla entre ellas)
    • Arrastra cada una de las tablas desde Access a la base de datos nueva
    • Te pregunta se quieres copiar la definición o la definición y los datos, selecciona lo que quieras, supongo que será la definición y los datos. Pulsa siguiente.
    • En la siguiente ventana selecciona las columnas (campos) que quieres copiar y pásalas a la derecha (>> para pasar todas). Siguiente.
    • Este paso es el más delicado. Como no hay equivalencia exacta en todos los tipos de datos entre Access y las otras bases de datos, el programa intenta hacer una equivalencia, pero a veces no acierta con lo correcto (a mí me daba problemas con los campos "memo"). Repasa cada uno de los campos y comprueba que son los correctos. A veces también da problemas con las claves principales, prueba a no crear una clave y luego modificar la tabla... pero no sé, como esto lo puedes hacer las veces que quieras ya sabes intenta a base de prueba-error. Pulsa crear.
    • Cuando hayas terminado con todas las tablas guarda la nueva base de datos y ya te la puedes llevar a otro sitio, incluso otro sistema operativo y te funcionará (espero). Debes saber que no te puedes llevar los formularios ni los informes y las consultas, que te aparecerán como si fueran tablas, si te las llevas a la base de datos nueva, no serán realmente consultas, sino que se convertirán en tablas nuevas (lo cual, creo que no es muy útil)
Espero haberme explicado bien
Un saludo


-----Mensaje original-----
De: Narcis Garcia [mailto:[hidden email]]
Enviado el: lunes, 02 de julio de 2018 22:20
Para: LibreOffice users-es SPM <[hidden email]>
Asunto: [es-users] Abrir o convertir MDB

Hola, uso Debian 9 y he dado muchas vueltas para lograr abrir una base de datos de Microsoft Access con LibreOffice.
Ya probé con mdbtools/odbcinst pero no lo consigo.

Ahora he puesto en marcha una máquina virtual con Windows e instalado MS Office y LibreOffice en ella, con la intención de convertir la base de datos de MDB a ODF.
Pero cuando abro la base de datos MDB con LibreOffice (que es fácil y directo), aunque crea una nueva base de datos OpenDocument todas las tablas no son más que vínculos al fichero MDB.
Mi objetivo ahora es lograr importar todas las tablas de la base de datos MDB a un fichero OpenDocument que me pueda llevar con datos y todo (que no sean enlaces).

No encuentro manera de «importar base de datos» al estilo de Microsoft Access, ni tampoco opciones para transportar las tablas que veo con LibreOffice Base (que son vínculos).

¿Alguien conoce una solución de poca ingeniería?

Gracias.

--


__________
I'm using this express-made address because personal addresses aren't masked enough at this mail public archive. Public archive administrator should fix this against automated addresses collectors.

--
Para instrucciones sobre darse de baja envíe un mensaje a: [hidden email]
¿Problemas? https://es.libreoffice.org/recibe-ayuda/listas-de-correo/baja/
Guías para envío + más: https://wiki.documentfoundation.org/Netiquette/es
Archivo de la lista: https://listarchives.libreoffice.org/es/users/
Privacy Policy: https://www.documentfoundation.org/privacy

--
Para instrucciones sobre darse de baja envíe un mensaje a: [hidden email]
¿Problemas? https://es.libreoffice.org/recibe-ayuda/listas-de-correo/baja/
Guías para envío + más: https://wiki.documentfoundation.org/Netiquette/es
Archivo de la lista: https://listarchives.libreoffice.org/es/users/
Privacy Policy: https://www.documentfoundation.org/privacy
Narcis Garcia Narcis Garcia
Reply | Threaded
Open this post in threaded view
|

Re: Abrir o convertir MDB

Pues sí que funciona el método! Y luego es usable sin Windows.
El problema al que me enfrento ahora es que la base de datos MDB
contiene unas 400 tablas, y este método sólo funciona con 1 tabla para
cada traspaso.
He probado con LibreOffice 5.4.4.2 (Windows XP 32bits)
Con LibreOffice 6.0.5 (Windows 10 64bits) después de crear la primera
base de datos vinculada me dice: «No se pudo establecer la conexión con
el origen de datos MiFichero. No se pudo crear la conexión. Quizá el
proveedor de datos necesario no está instalado.»


__________
I'm using this express-made address because personal addresses aren't
masked enough at this mail public archive. Public archive administrator
should fix this against automated addresses collectors.
El 04/07/18 a les 19:28, Juan Carlos Sanz ha escrit:

> A ver si así te vale así, en tu sistema virtual:
>     • Abre la base de datos de Access con LibreOffice
>     • Crea una base de datos nueva en blanco con Base, da igual que la base de datos nueva sea HSQLDB o FireBird, aunque creo que FireBird dará  menos problemas. Para poder crear las bases de datos FireBird necesitas tener activadas las funcionalidades experimentales (Herramientas > Opciones > LibreOffice > Avanzado > Funcionalidades opcionales > Activar funcionalidades experimentales)
>     • Tienes que tener las dos bases de datos abiertas a la vez (reparte la pantalla entre ellas)
>     • Arrastra cada una de las tablas desde Access a la base de datos nueva
>     • Te pregunta se quieres copiar la definición o la definición y los datos, selecciona lo que quieras, supongo que será la definición y los datos. Pulsa siguiente.
>     • En la siguiente ventana selecciona las columnas (campos) que quieres copiar y pásalas a la derecha (>> para pasar todas). Siguiente.
>     • Este paso es el más delicado. Como no hay equivalencia exacta en todos los tipos de datos entre Access y las otras bases de datos, el programa intenta hacer una equivalencia, pero a veces no acierta con lo correcto (a mí me daba problemas con los campos "memo"). Repasa cada uno de los campos y comprueba que son los correctos. A veces también da problemas con las claves principales, prueba a no crear una clave y luego modificar la tabla... pero no sé, como esto lo puedes hacer las veces que quieras ya sabes intenta a base de prueba-error. Pulsa crear.
>     • Cuando hayas terminado con todas las tablas guarda la nueva base de datos y ya te la puedes llevar a otro sitio, incluso otro sistema operativo y te funcionará (espero). Debes saber que no te puedes llevar los formularios ni los informes y las consultas, que te aparecerán como si fueran tablas, si te las llevas a la base de datos nueva, no serán realmente consultas, sino que se convertirán en tablas nuevas (lo cual, creo que no es muy útil)
> Espero haberme explicado bien
> Un saludo
>
>
> -----Mensaje original-----
> De: Narcis Garcia [mailto:[hidden email]]
> Enviado el: lunes, 02 de julio de 2018 22:20
> Para: LibreOffice users-es SPM <[hidden email]>
> Asunto: [es-users] Abrir o convertir MDB
>
> Hola, uso Debian 9 y he dado muchas vueltas para lograr abrir una base de datos de Microsoft Access con LibreOffice.
> Ya probé con mdbtools/odbcinst pero no lo consigo.
>
> Ahora he puesto en marcha una máquina virtual con Windows e instalado MS Office y LibreOffice en ella, con la intención de convertir la base de datos de MDB a ODF.
> Pero cuando abro la base de datos MDB con LibreOffice (que es fácil y directo), aunque crea una nueva base de datos OpenDocument todas las tablas no son más que vínculos al fichero MDB.
> Mi objetivo ahora es lograr importar todas las tablas de la base de datos MDB a un fichero OpenDocument que me pueda llevar con datos y todo (que no sean enlaces).
>
> No encuentro manera de «importar base de datos» al estilo de Microsoft Access, ni tampoco opciones para transportar las tablas que veo con LibreOffice Base (que son vínculos).
>
> ¿Alguien conoce una solución de poca ingeniería?
>
> Gracias.
>

--
Para instrucciones sobre darse de baja envíe un mensaje a: [hidden email]
¿Problemas? https://es.libreoffice.org/recibe-ayuda/listas-de-correo/baja/
Guías para envío + más: https://wiki.documentfoundation.org/Netiquette/es
Archivo de la lista: https://listarchives.libreoffice.org/es/users/
Privacy Policy: https://www.documentfoundation.org/privacy
jucasaca jucasaca
Reply | Threaded
Open this post in threaded view
|

Re: Abrir o convertir MDB

Sí. después de contestar me di cuenta de que a mí tampoco me funciona en
LibreOffice 6.0.5. No se por qué no se ha incluido en esta versión el
driver de FireBird (creo que ese es el problema). Ya vimos que FireBird
es experimental. Con HSQLDB sí que me funciona.
Ya siento no haber encontrado un método mejor para las 400 tablas...
De todos modos, ya que veo que se trata de una base de datos un poco
grandecita, quizás debieras plantearte montar un servidor de bases de
datos (PostgreSQL, María DB, MySQL,... o FireBird como servidor) en vez
de los archivos de base de datos de escritorio que te había propuesto.
Yo que tú investigaría un poco. Una vez montado el servidor, la
transferencia de los datos sería parecida, pero creo que el rendimiento
y las posibles ampliaciones posteriores mejorarían sustancialmente.
Supongo que con Access con ese número de tablas a pocos datos que tengas
ya habrías empezado a notar los problemas de rendimiento...
Un saludo
Juan Carlos

El 06/07/18 a las 14:12, Narcis Garcia escribió:

> Pues sí que funciona el método! Y luego es usable sin Windows.
> El problema al que me enfrento ahora es que la base de datos MDB
> contiene unas 400 tablas, y este método sólo funciona con 1 tabla para
> cada traspaso.
> He probado con LibreOffice 5.4.4.2 (Windows XP 32bits)
> Con LibreOffice 6.0.5 (Windows 10 64bits) después de crear la primera
> base de datos vinculada me dice: «No se pudo establecer la conexión con
> el origen de datos MiFichero. No se pudo crear la conexión. Quizá el
> proveedor de datos necesario no está instalado.»
>
>
> __________
> I'm using this express-made address because personal addresses aren't
> masked enough at this mail public archive. Public archive administrator
> should fix this against automated addresses collectors.
> El 04/07/18 a les 19:28, Juan Carlos Sanz ha escrit:
>> A ver si así te vale así, en tu sistema virtual:
>>      • Abre la base de datos de Access con LibreOffice
>>      • Crea una base de datos nueva en blanco con Base, da igual que la base de datos nueva sea HSQLDB o FireBird, aunque creo que FireBird dará  menos problemas. Para poder crear las bases de datos FireBird necesitas tener activadas las funcionalidades experimentales (Herramientas > Opciones > LibreOffice > Avanzado > Funcionalidades opcionales > Activar funcionalidades experimentales)
>>      • Tienes que tener las dos bases de datos abiertas a la vez (reparte la pantalla entre ellas)
>>      • Arrastra cada una de las tablas desde Access a la base de datos nueva
>>      • Te pregunta se quieres copiar la definición o la definición y los datos, selecciona lo que quieras, supongo que será la definición y los datos. Pulsa siguiente.
>>      • En la siguiente ventana selecciona las columnas (campos) que quieres copiar y pásalas a la derecha (>> para pasar todas). Siguiente.
>>      • Este paso es el más delicado. Como no hay equivalencia exacta en todos los tipos de datos entre Access y las otras bases de datos, el programa intenta hacer una equivalencia, pero a veces no acierta con lo correcto (a mí me daba problemas con los campos "memo"). Repasa cada uno de los campos y comprueba que son los correctos. A veces también da problemas con las claves principales, prueba a no crear una clave y luego modificar la tabla... pero no sé, como esto lo puedes hacer las veces que quieras ya sabes intenta a base de prueba-error. Pulsa crear.
>>      • Cuando hayas terminado con todas las tablas guarda la nueva base de datos y ya te la puedes llevar a otro sitio, incluso otro sistema operativo y te funcionará (espero). Debes saber que no te puedes llevar los formularios ni los informes y las consultas, que te aparecerán como si fueran tablas, si te las llevas a la base de datos nueva, no serán realmente consultas, sino que se convertirán en tablas nuevas (lo cual, creo que no es muy útil)
>> Espero haberme explicado bien
>> Un saludo
>>
>>
>> -----Mensaje original-----
>> De: Narcis Garcia [mailto:[hidden email]]
>> Enviado el: lunes, 02 de julio de 2018 22:20
>> Para: LibreOffice users-es SPM <[hidden email]>
>> Asunto: [es-users] Abrir o convertir MDB
>>
>> Hola, uso Debian 9 y he dado muchas vueltas para lograr abrir una base de datos de Microsoft Access con LibreOffice.
>> Ya probé con mdbtools/odbcinst pero no lo consigo.
>>
>> Ahora he puesto en marcha una máquina virtual con Windows e instalado MS Office y LibreOffice en ella, con la intención de convertir la base de datos de MDB a ODF.
>> Pero cuando abro la base de datos MDB con LibreOffice (que es fácil y directo), aunque crea una nueva base de datos OpenDocument todas las tablas no son más que vínculos al fichero MDB.
>> Mi objetivo ahora es lograr importar todas las tablas de la base de datos MDB a un fichero OpenDocument que me pueda llevar con datos y todo (que no sean enlaces).
>>
>> No encuentro manera de «importar base de datos» al estilo de Microsoft Access, ni tampoco opciones para transportar las tablas que veo con LibreOffice Base (que son vínculos).
>>
>> ¿Alguien conoce una solución de poca ingeniería?
>>
>> Gracias.
>>


--
Para instrucciones sobre darse de baja envíe un mensaje a: [hidden email]
¿Problemas? https://es.libreoffice.org/recibe-ayuda/listas-de-correo/baja/
Guías para envío + más: https://wiki.documentfoundation.org/Netiquette/es
Archivo de la lista: https://listarchives.libreoffice.org/es/users/
Privacy Policy: https://www.documentfoundation.org/privacy
Narcis Garcia Narcis Garcia
Reply | Threaded
Open this post in threaded view
|

Re: Abrir o convertir MDB

Esta gran base de datos viene de un «rescate» de datos de una aplicación
comercial que dejó de funcionar por otros motivos y que, como tantas
otras, las hacen con Visual Basic y ficheros de MS Access.

La intención no es trabajar con esa base de datos, por lo que queda
completamente descartado el meterla en un servidor. La intención es sólo
poder sacar listados y buscar informaciones puntuales durante un poco
tiempo. Pero claro, no es lo mismo tenerlo que hacer mediante la
ventanita de una máquina virtual que en un LibreOffice nativo con el
copia-y-pega que se quiera y demás herramientas del entorno operativo
(libre).

Me imagino que, disponiendo de mucho más tiempo, podría desarrollar una
macro que procesara cada tabla creando una pareja, copiando los datos a
la nueva y eliminando la vinculada.
A LibreOffice le falta flexibilidad para que el usuario pueda manejar
masivamente datos y objetos (Exportar/importar una BD completa,
exportar/importar de/a ficheros DBF/CSV/etc., reparar, guardar
como:diferente formato).



__________
I'm using this express-made address because personal addresses aren't
masked enough at this mail public archive. Public archive administrator
should fix this against automated addresses collectors.
El 06/07/18 a les 17:51, Juan Carlos Sanz ha escrit:

> Sí. después de contestar me di cuenta de que a mí tampoco me funciona en
> LibreOffice 6.0.5. No se por qué no se ha incluido en esta versión el
> driver de FireBird (creo que ese es el problema). Ya vimos que FireBird
> es experimental. Con HSQLDB sí que me funciona.
> Ya siento no haber encontrado un método mejor para las 400 tablas...
> De todos modos, ya que veo que se trata de una base de datos un poco
> grandecita, quizás debieras plantearte montar un servidor de bases de
> datos (PostgreSQL, María DB, MySQL,... o FireBird como servidor) en vez
> de los archivos de base de datos de escritorio que te había propuesto.
> Yo que tú investigaría un poco. Una vez montado el servidor, la
> transferencia de los datos sería parecida, pero creo que el rendimiento
> y las posibles ampliaciones posteriores mejorarían sustancialmente.
> Supongo que con Access con ese número de tablas a pocos datos que tengas
> ya habrías empezado a notar los problemas de rendimiento...
> Un saludo
> Juan Carlos


--
Para instrucciones sobre darse de baja envíe un mensaje a: [hidden email]
¿Problemas? https://es.libreoffice.org/recibe-ayuda/listas-de-correo/baja/
Guías para envío + más: https://wiki.documentfoundation.org/Netiquette/es
Archivo de la lista: https://listarchives.libreoffice.org/es/users/
Privacy Policy: https://www.documentfoundation.org/privacy
Mauricio Baeza Servin Mauricio Baeza Servin
Reply | Threaded
Open this post in threaded view
|

Re: Abrir o convertir MDB

In reply to this post by jucasaca
On Fri, 6 Jul 2018 15:51:21 +0000, Juan Carlos Sanz <[hidden email]> wrote:

> Sí. después de contestar me di cuenta de que a mí tampoco me funciona en
> LibreOffice 6.0.5. No se por qué no se ha incluido en esta versión el
> driver de FireBird (creo que ese es el problema). Ya vimos que FireBird
> es experimental.


Así es, como es experimental, debes de tener activadas las características experimentales, dentro de Herramientas -> Opciones... LibreOffice, Avanzado, para poder usarlo.


Saludos
--
Para instrucciones sobre darse de baja envíe un mensaje a: [hidden email]
¿Problemas? https://es.libreoffice.org/recibe-ayuda/listas-de-correo/baja/
Guías para envío + más: https://wiki.documentfoundation.org/Netiquette/es
Archivo de la lista: https://listarchives.libreoffice.org/es/users/
Privacy Policy: https://www.documentfoundation.org/privacy
Mauricio Baeza Servin Mauricio Baeza Servin
Reply | Threaded
Open this post in threaded view
|

Re: Abrir o convertir MDB

In reply to this post by Narcis Garcia
On Fri, 6 Jul 2018 18:33:46 +0200, Narcis Garcia <[hidden email]> wrote:
>
> Me imagino que, disponiendo de mucho más tiempo, podría desarrollar una
> macro que procesara cada tabla creando una pareja, copiando los datos a
> la nueva y eliminando la vinculada.


De hecho, no se requiere tanto tiempo, con un poco de ayuda... sería interesante hacer un migrador MDB to ODB, me anoto para intentarlo..., aunque creo recordar que en el foro de soporte se trato algo así, voy a revisarlo...


> A LibreOffice le falta flexibilidad para que el usuario pueda manejar
> masivamente datos y objetos (Exportar/importar una BD completa,
> exportar/importar de/a ficheros DBF/CSV/etc., reparar, guardar
> como:diferente formato).


De hecho hace mucho de esto, aunque todo es mejorable...


Saludos

--
Para instrucciones sobre darse de baja envíe un mensaje a: [hidden email]
¿Problemas? https://es.libreoffice.org/recibe-ayuda/listas-de-correo/baja/
Guías para envío + más: https://wiki.documentfoundation.org/Netiquette/es
Archivo de la lista: https://listarchives.libreoffice.org/es/users/
Privacy Policy: https://www.documentfoundation.org/privacy