En esta unidad, en primer lugar, se va a explicar el concepto de fuentes de datos.
A continuación, se va a crear una base de datos en OOo Base que va a trabajar con una base de datos de Microsoft Office.
Por último, se va a crear una base de datos con tablas creadas a partir de archivos de texto.
1. Fuentes de datos
Existen una gran variedad de Sistemas de Bases de Datos en el mercado, entre los que podemos citar ORACLE, SQL Server, dBase, PostgreSQL, MySQL o Microsoft Access (en adelante MS Access). Cada uno de estos sistemas se caracteriza porque tienen su propio formato de archivo de datos para almacenar las bases de datos que mantienen.
Cualquier base de datos gestionada por estos sistemas puede ser registrada como fuente de datos en OOo Base; es decir, se puede considerar una fuente de datos a cualquier base de datos externa susceptible de ser manejada desde OOo Base. El acceso a dichas fuentes de datos puede hacerse tratando directamente con los archivos correspondientes de fuentes de datos, por ejemplo, los archivos planos de dBase o los archivos con extensión “mdb” de MS Access, o, puede hacerse a través de lo que se conoce como manejadores de conexión con bases de datos.
Los manejadores de conexión se caracterizan porque son capaces de ejecutar operaciones de bases de datos de manera transparente al usuario; es decir, actúan como intermediarios entre el usuario y un sistema de bases de datos en particular, de manera que, una vez establecidos los parámetros de conexión con un sistema de bases de datos, el usuario no tiene que preocuparse, al realizar operaciones, de las particularidades del sistema al que está conectado.
Entre los manejadores de conexión destacan especialmente ODBC y JDBC. ODBC es el estándar de conectividad con bases de datos de Microsoft mientras que JDBC está basado en la plataforma Java.
Además, OOo Base también soporta como fuentes de datos hojas de cálculo, libretas de direcciones de diversos clientes de correo como Microsoft Outlook o Mozilla Thunderbird e, incluso, archivos de texto.
La instalación y configuración de manejadores de conexión como ODBC y JDBC queda fuera de los objetivos de un curso de iniciación a OOo Base como este, por lo que en esta unidad vamos a ver cómo trabajar en OOo Base con una base de datos existente en MS Access y cómo crear otra base de datos con tablas construidas a partir de archivos de texto.
2. Trabajar con bases de datos de MS Access
En este apartado se va a ver cómo manejar una base de datos de MS Access desde OOo Base. Para empezar, hay que tener en cuenta que OOo Base sólo reconoce las tablas y consultas de MS Access; es decir, los informes y formularios que se tengan en MS Access no van a estar disponibles en OOo Base e, incluso, las consultas no van a ser reconocidas como tales sino que van a ser tratadas como vistas.
En el ejemplo que se va a mostrar, se va a partir de que se tiene una base de datos de MS Access que contiene tres tablas llamadas Empresas, Subvenciones e HistorialSubvenciones y una consulta llamada ConsultaTotales. Todos estos objetos y su contenido junto con las relaciones existentes entre las tablas se muestran en la Figura 10.1.
Figura 10.1. Contenido de la base de datos de MS Access
A continuación, se va a trabajar con esta base de datos a través de OOo Base. Lo primero que se debe hacer en OOo es seleccionar la pestaña Archivo, el submenú Nuevo y dentro de él la opción Base de Datos. A continuación aparece la pantalla “Asistente para bases de datos” donde se debe seleccionar “Conectar con una base de datos existente”. De entre todas las opciones de conexión que se presentan (dBase, Hoja de Cálculo, JDBC, ODBC,etc..) se debe elegir “Microsoft Access” (ver Figura 10.2).
Figura 10.2. Conectar con una base de datos Microsoft Access
En la siguiente ventana se debe indicar la ruta y el archivo con la base de datos en Microsoft Access tal y como se muestra en la figura 10.3
Figura 10.3. Selección de base de datos de Microsoft Access
En la ventana siguiente (Figura 10.4) se puede indicar si quiere registrar o no la base de datos y si una vez guardada la base de datos se quiere abrir.
Figura 10.4 Opciones de guardado de la nueva base de datos
Por último, debemos indicar un nombre para la nueva base de datos creada (Figura 10.5).
Figura 10.5. Guardado de la nueva base de datos
Antes de continuar hay que tener en cuenta que la nueva base de datos creada no es una base de datos nueva e independiente sino que realmente en el archivo creado sólo se está guardando la información que necesita OOo Base para conectarse con la base de datos de MS Access.
Esto supone que los cambios que se hagan sobre las tablas y las vistas de la base de datos en OOo Base también se van a ver reflejados automáticamente en la base de datos original de MS Access.
Como ya se ha expuesto anteriormente, al abrir la base de datos y situarse en la sección “Tablas” (Figura 10.6) se puede ver que están todas las tablas que tiene la base de datos de MS Access y que la consulta que existía aparece como una vista. Además, aparecen una serie de tablas propias de MS Access (todas las que comienzan por “MSys”) que almacenan diferentes características internas de la base de datos y que no son legibles ni modificables en OOo Base.
Figura 10.6. Tablas y vistas en OOo Base
Además, en la Figura 10.6 puede observarse también que en la barra de estado aparece que realmente la base de datos abierta está enlazando con una base de datos MS Access y aparece la ruta y el nombre del archivo original de dicha base de datos
Las relaciones que existían entre las tablas y que se mostraban en la Figura 10.1 también se mantienen automáticamente en OOo Base como puede verse en la Figura 10.7.
Figura 10.7. Relaciones de la base de datos
3. Creación de base de datos a partir de archivos de texto
En este apartado se va a ver cómo, a partir de archivos de texto que contengan información de un modo homogéneo, se puede crear una base de datos donde cada tabla se forma a partir de dichos archivos.
En primer lugar, se va a suponer que se tiene una carpeta llamada “Listas” que almacena un par de archivos de texto, uno llamado “Libros leidos” y otro llamado “Libros pendientes”. El contenido de estos dos archivos se muestra en los Cuadros de Texto 10.1 y 10.2
Cuadro de Texto 10.1. Libros leidos
Cuadro de Texto 10.2. Libros pendientes
En ambos archivos puede verse que se está almacenado información sobre libros, en concreto, cada línea de estos archivos contiene el título, el autor y el año de publicación de distintos libros.
Para tener estas listas de libros en forma de tablas en OOo Base se debe indicar, como en el apartado anterior, que se quiere crear una nueva base de datos conectando con una base de datos existente, pero en este caso, eligiendo “Texto” como fuente de datos (Figura 10.8).
Figura 10.8. Conectar con una base de datos de texto
En la siguiente ventana (Figura 10.9) se debe indicar la carpeta donde se encuentran los archivos y, la extensión de dichos archivos (en este ejemplo .txt). Además, se debe indicar también qué caracteres se están utilizando para distinguir un campo de otro en cada fila (en este ejemplo los campos están separados por ; ) y, en caso de tener datos numéricos, cuáles van a ser los separadores de decimales y de miles.
Figura 10.9. Ubicación y configuración de los archivos de texto
Al igual que en el apartado anterior, se debe indicar si al terminar (Figura 10.10) se desea registrar la base de datos y abrirla.
Figura 10.10. Opciones de finalización
Por último, hay que darle un nombre a la nueva base de datos e indicar dónde se quiere almacenar (Figura 10.11).
Figura 10.11. Nombre de la nueva base de datos
Si se examina la sección “Tablas” de la nueva base de datos puede verse que las dos listas que estaban en la carpeta indicada se han convertido en dos tablas en OOo Base (Figura 10.12).
Figura 10.12. Nueva base de datos y contenido de las tablas
4. Ejercicios propuestos
1.Crear los archivos de texto “Libros leidos” y “Libros Pendientes” detallados en esta unidad.
2.Crear la base de datos “Libros” a partir de los dos archivos del ejercicio anterior