Por fin encontré una forma sencilla de generar un diagrama de Entidad-Relación de una base de datos existente con MySql Workbench.

Para poder conseguirlo, debemos utilizar MySQL Workbench. Es una aplicación gratuita de MySQL de Oracle y que podemos descargar desde aquí.

Una vez instalada y configurada nuestra conexión a la base de datos de la que queremos obtener su “Diagrama Entidad-Relación”, nos vamos al menú superior Database y seleccionamos la opción de Reverse Engineer (Ingeniería inversa):

paso 01 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
Se nos mostrará la siguiente ventana donde seleccionamos nuestra conexión a la base de datos, localhost, y pulsamos Next (Siguiente):

paso 02 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
Cuando termine el proceso, volvemos a pulsar Next:

paso 03 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
Seleccionamos la base de datos que nos interese y pulsamos Next:

paso 04 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
Cuando termine el proceso, volvemos a pulsar Next:

paso 05 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
En la siguiente ventana debemos seleccionar qué objetos queremos incluir en nuestro diagrama. En nuestro seleccionaremos todos. Es importante seleccionar el check que aparece en la parte inferior. En algunas ocasiones me ha ocurrido que no me deja seleccionarlo porque a lo mejor hay demasiados objetos seleccionados. Pulsamos Next para continuar:

paso 06 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
Cuando termine el proceso, volvemos a pulsar Next:

paso 07 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
Si todo sale correctamente debería aparecernos una ventana como la siguiente:

paso 08 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
Pulsamos Finish para terminar y debería mostrarnos el diagrama con todas las tablas de nuestra base de datos. En algunas ocasiones sólo importa las tablas sin establecer las relaciones entre estas. Esto se debe a que esa información no existe en las tablas, muy común en aplicaciones de software libre.

paso 09 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench

Si nos fijamos bien, las tablas que tienen dibujadas las relaciones es porque tienen esa información creada:

paso 09a Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
En cambio, aquí podemos ver una tabla que sí dispone de las columnas foráneas:

paso 09b Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench

pero que no dispone de dicha información creada:

paso 09c Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench

Por ese motivo, no dibuja las relaciones en el diagrama.

Una vez que ya tenemos el diagrama completo, podremos imprimirlo y tomar anotaciones de cada una de las tablas así como colocarlas a nuestro gusto para que nos sea más fácil leer el diagrama.

paso 10 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench
Además de conseguir el diagrama, hay dos cosas que me han gustado bastante de esta herramienta, aunque parezca una chorrada, son las siguientes.

Si nos posicionamos sobre una relación entre tablas, ésta se sombrea e indica qué campos de las tablas son los que están relacionados. Esto es muy útil porque visualmente no es fácil saber qué columnas están relacionadas. Hay muchas aplicaciones de Software Libre que utilizan una nomenclatura sencilla en los campos e incluso en algunas ocasiones les dan nombres genéricos porque se tratan de claves primarias que sirven para multitud de tipos de Entidades, por lo que el poder visualizar esto hace que sea más sencillo elaborar tu consultas SQL:

paso 11 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench

Y la otra cosa que también es muy útil, es que permite modificar el tipo de diagrama para que lo anterior sea más sencillo todavía. Desde el menú superior, en Model, y en el menú Relationship Notation podemos seleccionar el estilo del diagrama. Por defecto viene seleccionado “Crow´s Foot (IE)” pero si seleccionamos Connect to Columns podremos ver directamente las relaciones sobre los campos implicados.

paso 12 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench

El diagrama se mostraría de la siguiente manera, indicando además la cardinalidad de las relaciones con simbología más clara si no tenemos grandes conocimientos de UML:

paso 13 Generar diagrama entidad relacion de una base de datos MySql existente con MySQL Workbench

La unica pega que tiene es que no dibuja las relaciones con líneas horizontales y verticales. Utiliza líneas diagonales y el díbujo queda un poco más feo. Pero por lo menos ayuda a interpretar el esquema.

Espero que os haya gustado y os sirva de utilidad.

Guardar

Advertisements

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies

Pin It on Pinterest

Share This

Compártelo

¡Comparte este artículo con tus amigos!

Veo que te gusta mi Blog...

Si te ha parecido interesante este artículo, no esperes a suscribirte a mi blog. Cuando vuelva a escribir otro seguro que te interesará y no desearás no haberte enterado. Puedes suscribirte con total tranquilidad de que no recibirás spam. Lo odio igual que tu. Solo quiero que aprendas cosas nuevas y te sientas agusto con mis artículos. ¡Gracias!

¡Gracias por suscribirte!