Desde OpenOffice.org, aunque no dispongamos de una interfaz de usuario tan cómoda como la de Access, también podemos acceder a datos, crear formularios, obtener informes, etc.
En esta sección trataremos todos estos temas
Alexandro Colorado, del Grupo de Usuarios de Linux de Tabasco (México) nos facilita el video tutorial que ha realizado demostrando como insertar en un documento de OpenOffice.org Writer, varios registros de una base de datos MySQL.
¡Disfrutadlo!
Disponible en:
http://superalumnos.net/files/mysql2000.swf (Flash - 3,6 MB)
Los compañeros de Nodo50 comparten con nosotros este mini-tutorial que nos muestra como conectar con MySQL desde OpenOffice. Este material forma parte de los cursos de informática que imparte imparte en Madrid a precios muy populares esta organización de contrainformación en red.
Curso de Introducción OpenOffice impartido por Nodo50
1.- Instalamos MySQL
apt-get install mysql-server
2.- Activamos la conexión por red al servidor MySQL
Para ello editamos el fichero de configuración de MySQL (/etc/mysql/my.cnf) y comentamos la linea "skip networking"
#skip networking
3.- reiniciamos el servidor MySQL
/etc/init.d/mysql stop
/etc/init.d/mysql start
4.- Asignamos passwdord al usuario root de MySQL
mysqladmin -u root password contraseña
5.- Iniciamos una sesión en el servidor, creamos la base de datos TRABAJO y la tabla CONTACTO (ver apuntes de ayer)
6.- Instalamos los paquetes libmyodbc y unixodbc-dev (reparar en sus dependencias)
7.- Editamos el fichero /etc/odbc.ini (estará en blanco) y le introducimos estas líneas:
[trabajo]
Trace = Off
TraceFile= stderr
Driver = /usr/lib/odbc/libmyodbc.so
DSN = trabajo
SERVER = localhost
USER = root
PASSWORD = contraseña
PORT = 3306
#OPTIONS = 1
#DATABASE= trabajo
#SOCKET = /tmp/mysql.soc
si bien en este ejercicio conectamos como root, lo correcto seria hacerlo como un usuario determinado de MySQL que tiene determinados privilegios sobre la base de datos TRABAJO. También es conveniente reparar en que la conexión se hace por el puerto por defecto por el que responde MySQL. Eso significa que aunque conectemos sobre la localhost, la conexión es una conexión de red, de ahí que hayamos tenido que habilitar las conexionesde red en el my.cnf
(Al instalar el paquete libmyodbc, encontraremos en /usr/share/doc/libmyodbc/exmples un ejemplo del fichero odbc.ini que podemos utilizar retocándolo con los datos de nuestro servidor MySQL y nuestra base de datos)

6.- Abrimos un documento de Write (OO) y vamos al menú Herramientas/Fuente de Datos. Creamos una nueva Fuente de Datos llamada Trabajo. Ponemos como tipo de Fuente de Datos la opción MySQL

7.- Vamos a la Pestaña MySQL, editamos la URL de Fuente de Datos y comprobamos que nos aparece el perfil que hemos creado en /etc/odbc.ini que se llamaba [trabajo] . En /etc/odbc.ini podríamos definir varios perfiles para accesos a múltiples bases de datos

8.- En la Pestaña Tablas comprobamos que hemos accedido a la base de datos TRABAJO y que se visualiza la tabla CONTACTO
9.- Con el editor de SQL o el Asistente Gráfico diseñamos una Consulta

10.- Ya podemos trabajar sobre la base de datos TRABAJO desde OO
Esta semana, Héctor Hoshi preguntó en la lista de correo de OpenOffice.org sobre la posibilidad de pegar un rango de datos de Calc en una tabla de Base.
Mi errónea respuesta fue que no se podía hacer directamente, remitiéndome a una macro que Santiago Bossio había desarrollado para implementar esta funcionalidad.
Mi gran sorpresa ha sido leer ayer mismo el Linux Magazine nº 14, donde Dmitri Popov publica un artículo de título "Llegar a Base".
En este artículo, Dmitri nos explica lo fácil que resulta la importación de datos de nuestras hojas de cálculo a la novedosa aplicación Base de OpenOffice.org.
Lo cito textualmente, intercalando algunos comentarios:
¿Y si ya se tiene la información en una hoja de cálculo? En muchas ocasiones, simplemente se desea importar la información existente en la base de datos. Por ejemplo supongamos que se tiene un archivo de Calc que contiene una lista de contactos y se quiere importar a la tabla CONTACTS.
Ya que una fuente de datos con un formato adecuado puede simplificar enormemente el proceso de importación, merece la pena perder algo de tiempo en preparar esta tarea. Lo primero que se hace es modificar la estructura de la hoja de cálculo para que sea idéntica a la estructura de la tabla CONTACTS. Es preciso asegurarse que la primera fila contiene los mismos nombres de campos que los de la tabla de la base de datos. Idealmente, deberían esar también el mismo orden. Hay que asegurarse de que todos los bloques de datos están colocados en las columnas adecuadas.
Bueno, esto no es exactamente así. He comprobado que si hay el mismo número de campos, se puede asociar cada columna de Calc al campo de Base que corresponda (incluso si no están en el mismo orden). Sigo citando...
A continuación se seleccionan los datos de la hoja de cálculo y se copian al portapapeles ("Editar -> Copiar" o "Ctrl + C"). Se abre la base de datos, se pulsa en el botón "Tablas", y se selecciona la tabla CONTACTS. Se pulsa con el botón derecho sobre ella y se selecciona "Pegar". En el cuadro "Copiar tabla" se teclea exactamente el nombre de la tabla objetivo en el campo Nombre de la tabla y se selecciona la opción "Adjuntar datos".
Adicionalmente, si escribimos un nombre de tabla inexistente se creará una nueva tabla en nuestra base de datos.
En el cuadro de asignación de columnas se verifica que todos los campos de la ventana de tabla origen están seleccionados y alineados con los campos respectivos de la ventana de tabla destino. Para alinear los campos se usan las flechas azules. Por último se pulsa en "Crear" para importar los datos.
Bien, ya veis lo fácil que es. ¿Como no se nos ocurrió antes? :-)