Convertir un modelo Entidad-Relación a un esquema de base de datos MySQL es sumamente sencillo con MySQL Workbench. A la hora de diseñar una base de datos, lo ideal es hacerlo a través de su modelo de datos relacional, con sus claves primarias, claves foráneas, tipos de datos, etc... y posteriormente convertirlo al esquema de base de datos. Hacerlo de forma manual, puede llegar a ser un poco laborioso y con Workbench se puede hacer con unos sencillos clicks de ratón.
Seguid leyendo y os enseñaré a convertir vuestros modelos de datos de forma sencilla...
¿QUÉ ES MYSQL WORKBENCH?
MySQL Workbench es una herramienta visual de diseño de bases de datos que integra desarrollo de software, Administración de bases de datos, diseño de bases de datos, creación y mantenimiento para el sistema de base de datos MySQL. Es el sucesor de DBDesigner 4 de fabFORCE.net, y reemplaza el anterior conjunto de software, MySQL GUI Tools Bundle.
Características:
Las características + destacadas de MySQL Workbench son:
- General:
- Conexión y gestión de instancia de base de datos.
- Asistente de elementos de acción.
- Completamente compatible con scripts escritos en Python y Lua.
- Soporte para complementos personalizados
- Editor de SQL:
- Exploración de esquema de objetos.
- Resaltado de sintaxis en SQL y analizador de declaraciones.
- Conjuntos de resultados múltiples, editables.
- Colecciones de fragmentos SQL.
- Tunelización de conexión por SSH.
- Soporte Unicode.
- Modelado de datos:
- Diagrama entidad relación.
- Modelado visual con arrastrar & soltar.
- Ingeniería inversa a guiones SQL y base de datos en vivo.
- Ingeniería directa a guiones SQL y base de datos en vivo.
- Sincronización de esquema.
- Impresión de modelos.
- Importación desde fabFORCE.net DBDesigner4.
- Administración de base de datos:
- Iniciar y detener instancias de base de datos.
- Configuración de instancias.
- Administración de cuentas en base de datos.
- Exploración de instancias variables.
- Exploración de ficheros de registros.
- Exportación e importación masiva de datos.
MySQL Workbench nos facilita el trabajo con bases de datos
1.- ELEMENTOS NECESARIOS PARA ESTE TUTORIAL
- Un PC con MySQL Workbench (versión 6.3CE en este tutorial)
2.- CREACIÓN DE LA BASE DE DATOS
Vamos a partir del punto inicial que no tenemos ninguna base de datos creada. Para crear una, deberemos abrir MySQL Workbench y crear la base de datos bien desde la interfaz gráfica o desde comandos. En este ejemplo vamos a crear la base de datos (a_empresa) desde comandos. Para ello ejecutaremos dentro de Workbench los siguientes comandos:
create database a_empresa;
use a_empresa;
3.- GENERAR EL MODELO DESDE EL ESQUEMA (INGENIERÍA INVERSA)
Con la base de datos ya creada previamente (aunque esté completamente vacía), debemos hacer click en Database -> Reverse Engineer:
Ingeniería Inversa
En la siguiente pantalla, deberemos seleccionar los datos del servidor donde está la base de datos. Si vuestra base de datos está en local, posiblemente los datos salgan ya de forma automática. Si no es así, deberéis introducir los datos necesarios para acceder al gestor de base de datos:
Parámetros de conexión
Si todo sale bien, se mostrará un mensaje de éxito mostrando la correcta conexión con el gestor de bases de datos:
Resultado de la conexión
Ahora es el momento de seleccionar el esquema para generar su modelo Entidad-Relación. En este ejemplo el esquema está vacío, por tanto el modelo saldrá vacío. Si el esquema tiene algunas tablas creadas, se crearán en el modelo entidad relación. Al finalizar haremos click en Next:
Seleccionar Esquema
Una vez conectados al esquema, se obtendrá una lista de todos los objetos que hay en dicho esquema. Haremos click en Next:
Obtener objetos del esquema
Se pueden seleccionar determinados objetos para la generación posterior del modelo. En este ejemplo, al estar el esquema vacío, no podremos seleccionar nada. Haremos click en Execute:
Seleccionar objetos
Al finalizar el proceso, se mostrará un mensaje de éxito si todo ha salido bien para posteriormente mostrarnos un modelo entidad relación completamente vacío.
Resultado de la importación
4.- GENERAR EL MODELO ENTIDAD RELACIÓN
Ahora, vamos a generar un modelo de datos entidad relación muy sencillo con 2 tablas. Este paso no voy a explicarlo, pero se hace de forma muy sencilla utilizando los botones izquierdos para crear las tablas y las relaciones entre ellas:
Tablas en el modelo EERR
5.- GENERAR EL ESQUEMA DESDE EL MODELO (INGENIERÍA AVANZADA)
Una vez que el esquema entidad relación lo tenemos definido, es momento de pasar dicha información al esquema de nuestra base de datos. Debemos hacer click en Database -> Forward Engineer:
Ingeniería avanzada
En la siguiente pantalla sale una serie de opciones para crear la información en la base de datos. Por defecto, no será necesario marcar nada y tan solo deberemos hacer click en Next:
Opciones para la base de datos
En el siguiente paso deberemos seleccionar las tablas, vistas, triggers que queremos "exportar". En este ejemplo solamente tenemos 2 tablas, por tanto, seleccionaremos las tablas y haremos click en Next:
Objetos a exportar
En el siguiente paso se muestra el código SQL necesario para generar el esquema en nuestra base de datos. Haremos click en Next para continuar:
Código SQL
Una vez que el proceso termina, se verá un mensaje de éxito como el siguiente:
Proceso finalizado
Ahora, debemos confirmar en nuestra base de datos que las tablas se han creado de forma correcta. En la siguiente imagen se muestran las 2 tablas creadas desde el modelo y exportadas al esquema a_empresa:
Tablas en la base de datos
ENJOY!