Cómo abrir geodatabases mdb y gdb con QGIS

Las geodatabases de ESRI son el formato óptimo para trabajar con datos si trabajas en ArcGIS.

Hay dos tipos de geodatabases:

  • Geodatabases de archivos: formato gdb. Una geodatabase de archivos es una colección de archivos en una carpeta en el disco que puede almacenar, consultar y administrar datos espaciales y datos no espaciales.
  • Geodatabases personales: formato mdb. Una geodatabase personal es una base de datos de Microsoft Access que puede almacenar, consultar y administrar tanto datos espaciales como datos no espaciales. Dado que se almacenan en bases de datos de Access, las geodatabases personales tienen un tamaño máximo de 2 GB. Además, solo una persona puede editar a la vez los datos de una geodatabase personal.

File_Personal_GDB

Las geodatabases personales personales mdb son menos eficientes y con las limitaciones indicadas, por lo que no es recomendable su uso. Las geodatabases de archivo son más eficientes y es el formato por defecto para trabajar en ArcGIS Pro.

Ahora bien, ¿qué ocurre si la información espacial que necesitas se encuentra en un formato mdb o gdb y no tienes licencia de ArcGIS? Con QGIS, el software GIS open source más potente, es posible acceder a los datos espaciales de una geodatabase personal o de archivos.

En esta entrada te enseñamos a abrir los ficheros mdb y gdb con QGIS.

Abrir geodatabases mdb y gdb con QGIS

Abrir una geodatabase de archivos (archivos *.gdb) con QGIS

Abrir un archivo gdb es muy sencillo, estos son los pasos:

1. Abrir QGIS. (descarga aquí si no lo tienes instalado)

2. Vamos al menú superior capa > añadir capa > Añadir capa vectorial

3. Se abrirá el Administrador de fuentes de datos:

  • En el apartado «Tipo de fuente» seleccionamos la opción Directorio.
  • En el apartado «Fuente», seleccionamos AbrirArchivoGDB.

Geodatabases mdb y gdb con QGIS

4. En «Conjunto(s) de datos vectoriales» hacemos clic en el botón Explorar (el de los tres puntos) y buscamos en nuestro equipo el fichero .gdb que queremos añadir.

5. Hacemos clic sobre añadir y se mostraran las feature classes que contiene la geodatabase:

6. Seleccionamos las capas que queremos añadir. Podemos seleccionar todo y clic en Aceptar.

7. Se añaden al panel de capas y al canvas de QGIS:

Editar las geometrías de una geodatabase de archivos

Ene ste proceos hemos visto como añadir este tipo de geodatabses de archivos en QGIS, lamentablemente es un acceso de solo lectura, paa visualizar dichas capas, si te interesa saber cómo editar las geometrías de una geodatabase de archivos haz clic aquí.

Abrir geodatabases personales (*. mdb) con QGIS

Abrir una geodatabase .mdb con QGIS es algo más complejo, pues requiere realizar dos pasos previos:

Primer paso

El primero paso es descargar e instalar Microsoft Access Database Engine 64 bit. Microsoft Access Database Engine 2010 (64 bits) permite la transferencia de datos entre archivos existentes de Microsoft Office: tanto archivos de Microsoft Access 2010 (* .mdb y * .accdb) como de Microsoft Excel 2010 (* .xls, * .xlsx , y * .xlsb) a otras fuentes de datos como Microsoft SQL Server.

Segundo paso

Una vez instalado el controlador de acceso a archivos *.mdb debemos incluir dos nuevas variables de entorno.

Para ello debemos ir al menú superior de QGIS > Configuración > Sistema > Entorno.

Marcamos la casilla «Usar variables personalizadas» y añadimos dos nuevas variables haciendo clic en el botón verde +.

Las variables son las siguientes:

Nombre de la variable: OGR_SKIP
Valor: ODBC

Nombre de la variable: PGEO_DRIVER_TEMPLATE
Valor: DRIVER = Microsoft Access Driver (* .mdb, * accdb ..); DBQ=%s

Aceptamos, reiniciamos y ya estaría listo.

Ahora ya podemos añadir las capas de la geodatabase personal, para ello vamos al menú superior capa > añadir capa > Añadir capa vectorial

Se abrirá el Administrador de fuentes de datos.

En el apartado «Tipo de fuente» seleccionamos la opción Archivo y en la sección «Fuente», hacemos clic en el botón Explorar (el de los tres puntos) y buscamos en nuestro equipo el fichero .mdb que queremos añadir:

Hacemos clic en el botón Abrir y en Añadir.

Una nueva ventana se abre para seleccionar las feature classes contenidas en la geodatabase a cargar.

Una vez seleccionadas las capas se añadir al Panel de Capas y se mostrarán en el canvas de QGIS:

¡Ojo! Este procedimiento es válido únicamente para abrir geodatabases mdb, es decir, una base de datos .mdb que contenga tablas con objetos geográficos. Pero no sirve para abrir tablas no espaciales. Si deseas abrir tablas no espaciales necesitarás exportar estas tablas a formato txt, csv, dat o wkt y posteriormente añadir estos archivos a QGIS mediante el botón Añadir capa de texto delimitado.

Let’s connect!

Date de alta en nuestra newsletter y te enviaremos nuestra propuesta con las mejores
Soluciones GIS basadas en software libre

Tan solo una vez al mes recibirás las últimas novedades del sector GIS y de nuestros cursos

17 comentarios en «Cómo abrir geodatabases mdb y gdb con QGIS»

  1. no me logra funcionar, me arroja como problema que mi mbd no es de origen valido o reconocido, realizando todos los procesos anteriores.
    saludos!

  2. Hola Aurelio, que tal?

    Necesito abrir una geodatabase en QGIS que, según la tabla de metadatos adjtunta, contiene datos vectoriales (poligonos, lineas y puntos) y raster,
    No tuve ningún problema en abrir y visualizar los datos vectoriales. Como puedo hacer lo mismo para raster?

    Desde ya, muchas gracias. Felicitaciones por los posts, son por demás interesantes. Saludos

  3. Buenas, hace tiempo seguí el procedimiento para conectar Geodatabases Personales Esri (.mdb) a QGIS. El proceso me funcionó correctamente. Pero de la noche a la mañana dejo de funcionar. Lo único que se me ocurre es que es debido a que actualicé el Microsoft Access 2016 a Access de Microsoft 365 que es el de la empresa. Se necesita un nuevo procedimiento para esta nueva versión de Access?

    Gracias!

  4. Buenas Tardes, Uso Ubuntu y quería saber como podría aplica estos pasos ya que el programa que sugieres es de Windows, igual la información esta genial! gracias

  5. Hola,
    Un archivo *.gdb es solo parte de una serie de archivos que completan la información GEO de una capa. Normalmente hacen falta el *.prj, *.shx, *.shp por lo menos. ¿Por que en el ejemplo del blog, parece ser que al cargar el gdb no hace falta nada mas? Parece que se cargan las geometrías sin ningún problema. ¿Qué tipo de información se pierde al cargar unicamente el gdb?

    Gracias de antemano

    • Buenas Edgar, un archivo *.gdb contiene internamente todos los datos necesarios para representar espacialmente los datos, desde la geometría, los metadatos o la proyección. No es necesario ningún archivo más. Toda esta información se guarda internamente ya que es una base datos. Si embargo, un shapefile es un formato de almacenamiento plano en el que cada uno de los archivos que lo compone contiene una información y si falta alguno de los archivos obligatorios, la capa no se representará. Por eso en el ejemplo los features de la base de datos se representan perfectamente. Saludos!

  6. Aurelio buen día, agradezco como siempre los conocimientos que nos compartes, quiero comentarle que después de revisar este blog y aplicarlo, para mi, ha sido el paso definitivo para que tome la decisión con tranquilidad de dejar de usar arcmap (ya que puedo abrir las mdb y gdb), ya con esto me migraré a Linux definitivamente y tendré todas las herramientas que uso y necesito en QGIS.
    (Para mi caso particular).

    Una despedida a mi windows, office y arcmap.

    Buen día para todos.

  7. Muchas gracias Aurelio.
    Como son tablas que tienen X e Y y ya sabes que ArcGis te permite cargar esa tabla access y visualizarla y luego, si uno quiere, convertirla a shape, pues tenía la esperanza de que hubiese alguna herramienta que permitiese previsualizar los puntos. Pero ya veo que no.

    Por otro lado, estuve trabajando con otra .mdb que si tiene objetos espaciales y el nombre era demasiado largo, de manera que daba error, así que es otra cosa a tener en cuenta.
    Muchas gracias por tu ayuda.

  8. Hola,
    Aurelio, somos antiguos compañeros de Eptisa, bien conocidos de los trabajos del PH del Duero. Qué alegría visitar esta página maravillosa que has creado!
    He seguido los pasos: Descargar el Microsoft Access Database Engine 64 bit.
    Añadido: OGR_SKIP; ODBC; PGEO_DRIVER_TEMPLATE ; DRIVER = Microsoft Access Driver (* .mdb, * accdb ..); DBQ=%
    Reinicio….etc.
    y no me ha sido posible agregar las .mdb. Se tratan de las bases de datos disponibles en el sistema del MITECO llamado PHWEB

    • Hola Virginia,
      Me alegra verte por aquí, después de tantos años 😉
      Verás este procedimiento es válido únicamente para abrir geodatabases mdb de ESRI, es decir, una base de datos .mdb que contenga tablas con objetos geográficos. Pero no sirve para abrir tablas no espaciales. Si deseas abrir tablas no espaciales necesitarás exportar estas tablas a formato txt, csv, dat o wkt y posteriormente añadir estos archivos a QGIS mediante el botón Añadir capa de texto delimitado.
      Saludos!

  9. He seguido los pasos
    Descargar el Microsoft Access Database Engine 64 bit.
    añadido
    OGR_SKIP ODBC
    PGEO_DRIVER_TEMPLATE Valor: DRIVER = Microsoft Access Driver (* .mdb, * accdb ..); DBQ=%

    y no me ha sido posible agregar las .mdb. Se tratan de las bases de datos del Inventario Forestal Nacional.

    Alguna idea de que puede estar ocurriendo?

    • Hola Edurado, Este procedimiento es válido únicamente para abrir geodatabases mdb creadas con ArcGIS, es decir, una base de datos .mdb que contenga tablas con objetos geográficos. Pero no sirve para abrir tablas no espaciales. Si deseas abrir tablas no espaciales necesitarás exportar estas tablas a formato txt, csv, dat o wkt y posteriormente añadir estos archivos a QGIS mediante el botón Añadir capa de texto delimitado. Saludos!

Los comentarios están cerrados.