Administrar y actualizar una base de datos MySQL desde Access

  • 20 de octubre de 2002
  • Valoración:
  • 19 Comentarios
  • Access, MySQL
Si nuestras páginas utilizan una base de datos debemos contar con una herramienta de administración y actualización de la base de datos, o programarla nosotros. Ilustramos como Access puede ayudarnos a hacerlo fácil.
Uno de los mayores problemas de los que adolece actualmente Mysql es el no poseer un entorno gráfico que satisfaga a la mayor parte de los usuarios. Existen magníficos proyectos a través de página Web, como PHPmysqlAdmin, pero muchas veces te encuentras con gente que le gustaría tener algo parecido a un Access, posibilidad de incluir formularios para la entrada de datos, o de informes sobre los datos almacenados dentro de una tabla.

Dado que no existe hoy en día ninguna herramienta parecida al Access para trabajar con Mysql, el presente artículo expondrá la forma de trabajar con las bases de datos de Mysql utilizando el entorno gráfico de Access. Al terminarlo, podrás utilizar los formularios, consultas e informes de Access con los datos de los ficheros de Mysql.

De esta forma, el encargado de actualizar los datos de una página, podrá trabajar desde Access, con la comodidad de los formularios, los menús desplegables etc., y los datos serán enviados automáticamente a Mysql.

Imagen de la consola de MySQL
Imagen de la consola de MySQL

Formulario de Access que accede a una base de datos MySQL
Formulario de Access que accede a una base de datos MySQL

Nota: Dos imágenes que se diferencian un mundo. Con las dos se puede administrar una base de datos MySQL, una corresponde a la consola MySQL (la herramienta más básica) y la otra a un formulario con Access, que sin duda ofrece una interfaz mucho más agradable.

Además, para la generación de formularios e informes se pueden utilizar los asistentes... todo un ahorro de tiempo!!

Referencia: Para realizar esta tarea es necesario que hayamos descargado el driver ODBC y lo hayamos instalado en nuestro sistema Windows. Esta labor se puede conocer en un artículo de DesarrolloWeb.com: Instalar el driver ODBC para MySQL.

Una vez tenemos el driver MyODBC instalado, lo primero que hay que hacer es crear una base de datos en blanco desde la cual se vincularán las tablas. Una vez creada, se hace clic sobre la opción de crear nueva tabla. Aparecerá la siguiente ventana en la que se seleccionará crear nueva tabla vinculada:

Ventana de vincular una tabla

Aparece la ventana de vincular una tabla de una base de datos, en la parte inferior se selecciona en tipo de archivo:
fuente de datos ODBC()

Seleccionamos el tipo de fuente: ODBC

Al hacer clic sobre Vincular, aparece la ventana para seleccionar un Origen de datos, se selecciona dentro de la pestaña de fuentes de datos del Equipo, la fuente de datos que creamos en la primera parte del artículo:

Seleccionamos la fuente de datos ODBC de entre las que tengamos creadas en nuestro sistema

Una vez se selecciona, se hace clic sobre Aceptar, y aparece la ventana de configuración de la fuente de datos ODBC de Mysql. Como ya esta configurada, hacemos clic sobre OK, y aparecerá la ventana en la que se pueden elegir entre las tablas que contiene la base de datos para la cual hemos configurado la fuente de datos ODBC.

Se selecciona una tabla, y a continuación aparecerá una ventana donde deberemos especificar, hasta un máximo de diez, los campos que forman parte de la clave.

Seleccionamos la clave principal

Se seleccionan los campos, y se hace clic sobre aceptar.

Aparecerá una nueva tabla dentro de la base de datos de Access. A diferencia del resto de tablas, esta no existe físicamente dentro del fichero de Access, sino que todas las modificaciones que se realizan sobre la misma, se envían a través de ODBC al fichero MYSQL.

Imagen de tabla vinculada

A partir de ahora, se podrán crear formularios, consultas e informes sobre esta tabla tal y como se hace normalmente desde Access.

Nota: Algunos proveedores de Hosting no incluyen en su paquete básico el acceso remoto al servidor de base de datos, o requiere de un aviso explicito por parte del cliente para su configuración.

Comentarios

jorge

24/7/2003
Pero, el uso del phpmyadmin, ¿no es eficiente para admistrar la base de datos ???

RESPUESTA

PhpMyAdmin es un programa muy eficaz y sencillo de utilizar y de instalar. Además, se puede utilizar con cualquier proveedor, porque en realidad no son más que unas páginas web que consultan con tu base de datos.

Ahora bien, otras herramientas como Access o MyCC, los dos comentados en el Taller de MySQL, realizan conexiones con una interfaz de trabajo a través de aplicaciones Windows típicas en lugar de interfaz web. La interfaz de programa o aplicación tiene algunas ventajas como la rapidez y sencillez de manejo.

Además, con una aplicación instalada en tu ordenador local, evitas un posible agujero de seguridad porque tener un PhpMyAdmin colgado de la web puede ser un problema si alguien encuentra la URL donde está publicado y accede a la base de datos de nuestro sitio web sin ninguna protección.

Así pues, aunque no digamos a nadie donde está colocado el PhpMyAdmin, será necesario protegerlo para que no de lugar a accesos no autorizados. Si utilizamos una aplicación, con asegurarnos que nadie más tiene acceso a nuestro ordenador, estaríamos seguros de que no se realizan accesos no permitidos.

Jose Antonio Espinosa

28/7/2003
Problemas al importar

¿No te ha dado nunca problemas con los tipos de datos al vincular la tabla? Aparentemente parece que las vincula, pero o bien los tipos de datos no coinciden o no las vincula en absoluto...

Manuel

02/10/2004
A mi me funciona bien la insercion de datos desde access, pero no puedo modificar ni borrar datos, me da un error de que hay un usuario que esta usando el registro despues que yo lo modifique. No hay manera de borrar y modificar, a ver si me podeis dar una solucion. Saludos

RESPUESTA

No se si esto te servirá, porque resulta muy obvio. Si tienes la tabla abierta con Access y al mismo tiempo haces una consulta, puede que te diga que la tabla está abierta de manera exclusiva por otro usuario. La solución sería cerrar Access y en último caso, reiniciar el ordenador para que el usuario libere el recurso.

Fernando

10/2/2005
a mi tamb ien me da el error de q otro usuario esta utilizando el registro. la solucion de reiniciar la maquina no es efectiva asi q a ver si alguien nos puede dar una solucion.

muchas gracias

Rafael Noguera

26/3/2005
Funciona perfectamente la vinculación de tablas mysql a access, el problema viene cuando cierras la base de datos access y la vuelves a abrir...Tienes que volver a vincularlo todo de nuevo ya que no mantiene la conexión. ¿Hay alguna solución?..

Emilio

08/3/2006
Si no tenemos más remedio que utilizar el front-end de Access, el sistema de conectar por ODBC está bien.

Pero si queremos administrar y gestionar una base de datos MySQL seamos prácticos. No nos compliquemos, deberíamos recurrir a un cliente gráfico de MySQL.

A mi me encanta Navicat de Premiumsoft. Es excelente y muy sencillo, pero es de pago.

Si queréis una opción gratuita, en la página www.mysql.com tenéis GUI para Windows que pueden administrar bases de datos de este tipo.
También podéis recurrir a la útil herramienta DBDesigner 4 http://fabforce.net/dbdesigner4/

Renato

02/9/2006
La vinculacion de tablas desde mysql - access no es del toda perfecta, tiene problemas con el tipo de campo tiempo del mysql, el access no reconoce ese tipo de campo, ademas si quieres tener integridad referencial tienes que necesariamente usar tablas tipo inodb ya que el access actua solo como interfaz, creo q como solucion momentanea esta bien usar el access pero para cosas serias es mejor usar algun lenguaje de programacion mas solido.

Hector Ballester

25/10/2006
Estoy trabajando muy bien con la base de datos de MySQL vinculada a Access, les recomiendo utilizar WAMP5 para poder instalar Apache, PHP y MySQL en una sola operación. Es muy facil de utilizar.

gloria

15/11/2006
Hola, nosotros tenemos nuestra base de datos en Access ya que tenemos una serie de formularios hechos en Access para gestionar las tablas(mostramos y modificamos tablas). Las pasamos al servidor de MySQL sin ningún problema, sin embargo, al pasarlas notamos bastante lentitud en las consultas. He oido que el motivo es que Access se descarga todas las tablas de MySQL para realizar la consulta desde aquí(por eso la lentitud). ¿Cómo puedo hacer consultas en Access, que las mande al servidor MyQSL y sea éste el que ejecute la consulta devolviendo a Access el resultado?
Gracias por adelantado

alfil106

08/12/2006
Si quieren una ide como access usen OpenOffice
En la nueva version se puede enlazar MySQL con un DNS.
Solo se tiene que tener el codeck ODBC

Se crea la DB en myql
Se crea el dns
y al iniciar en openoffice se da la opcion de usar base de datos con dns
y listo se salva
Cada vez que se desee ver la DB se puede acceder desde Base.
Se puede modificar la estructura y no hay problema
solo hay que reabrir el archivo

Juan David Benìtez Ecuador

23/2/2007
Ok la soluciòn es la siguiente fijense que toda table que importen vinculando tablas ocea odbc tenga siempre una clave primeria access funciona con claves primarias sino le ponen clave primaria a la tabla exportada jamaz les va dejar actualizar editar borrar etc saludos desde Ecuador!!!!!!!!!!! wahahaha

david

15/12/2008
no veo el driver en el panel de control, y tengo instalado mysql yog enterprise

Gejo

22/12/2008
Gracias por el tutorial. En mi caso sólo necesitaba poder generar las SELECT más complejas desde Access. Me ha sido muy útil.

janilka

03/9/2009
LOS DATOS DE WINDOW
ES EXCELENTE EL DOCUMENTAL PERO CREO QUE DEVERIAN DESARROLLARLO UN POCO MAS ES DECIR QUE LES AGREGUEN AMS INFORMACION Y QUE PONGAN MAS EJEMPLOS.

Jesús

19/10/2009
¿Que aporta exactamente esto?
Estoy haciendo pruebas para migrar mi base de datos en Access a MySQL. Pero querría seguir usando Access para administrarlo.

¿Realmente aporta algo este paso (velocidad en red sobre todo)?

lina

23/4/2010
CONVERTIR UNA BASE DE DATOS SQL A ACCESS
Porfa alguien me puede ayudar, deseo convertir una base de datos sql a access

Angel

19/1/2011
Acces y MySql
Usar Acess como interface para introducir datos y sobre todo sacar informes o facturas esta genial. Ademas Acess permite combinar tablas locales de Acess con tablas remotas en el servidor MySql. El Access XP va genial, y a partir del Access 2007 de algunos problemas de noseque.. alguien comentaba sobre registros bloqueados, este problema no existe con Acess XP (2003).

He intentado utilizar OpenOffice Base como alternatiba a Acess, pero Base no permite combinar tablas remotas y tablas locales, algo necesario si quieres sacar el maximo partido a los informes y formularios.

Ahora bien, Acess no es adecuado para administrar la base de datos, su utilidad reside en interface para usuarios que inserten y lean datos. Y como alguien apuntaba, las tablas deben tener sus Keys como es debido para que Acess funcione correctamente.

Es mi opinion basada en mi experiencia con Acces y MySql.

Xacar

10/1/2013
open office
El Base de Open Office como han dicho es parecido al Access, pero créanme, tiene algunas limitaciones, nos resulta demasiado fiable y es lento.

Jose Miguel

31/1/2014
Problemas en actualizaciones
Vinculé una tabla mysql a Acces, y hasta ahí todo perfecto. Ahora he tenido que añadir un campo en la tabla Mysql, y ese campo no me aparece en la tabla vinculada de Access, ni siquiera volviendo a realizar todo el proceso de vinculación. Aparecen todos los que tenía anteriormente excepto el campo nuevo ¿Cuál puede ser el problema? Muchas gracias

Compartir