Esta página explica cómo interpretar los diagramas creados en Relational Migrator. Cada diagrama consta de dos vistas: una para la base de datos relacional y otra para la base de datos MongoDB. Las vistas muestran las relaciones entre las entidades de las bases de datos.
Visión relacional
En la vista relacional, cada cuadro representa una tabla en la base de datos relacional. El título del cuadro indica el nombre de la tabla.
Cada cuadro enumera las columnas de la tabla correspondiente. Para cada columna, el cuadro indica su nombre y tipo de dato.
Algunas columnas tienen iconos para indicar su función dentro de la tabla:
Un icono de llave indica la llave primaria de la tabla.
Un icono de enlace indica una clave foránea.
Vista de MongoDB
En la vista MongoDB, cada cuadro representa una colección en tu base de datos MongoDB. El título del cuadro indica el nombre de la colección.
Cada casilla enumera los campos en la colección correspondiente. Para cada campo, la casilla indica el nombre del campo y su tipo de datos.
Si una colección contiene documentos incrustados o arreglos, esos campos se muestran en línea en la misma colección.
Algunos campos tienen íconos para indicar su rol dentro de la tabla:
Un ícono de llave indica la colección
_idCampo. Al usar la estrategia de gestión de claveswrapped, el campo_idcontiene subcampos. En este caso, el cuadro contiene varios iconos de clave que corresponden a un solo campo.Un icono de enlace indica que el campo se asigna a una columna relacional utilizada en una clave externa.
Elegir modo de visualización
Relational Migrator proporciona diferentes modos de vista de diagramas: división horizontal, división vertical, vista relacional y vista MongoDB.
Modo de vista | Descripción |
|---|---|
División horizontal | Muestra la vista relacional en la parte superior y la vista de MongoDB en la parte inferior. Cuando creas un nuevo proyecto, la división horizontal es el modo de vista por defecto. |
División vertical | Muestra la vista relacional a la izquierda y la vista MongoDB a la derecha. |
Visión relacional | Muestra solo el diagrama de su base de datos relacional. |
Vista de MongoDB | Muestra solo el diagrama de su base de datos MongoDB. |
Para cambiar los modos de vista, haz clic en una opción de modo de vista en la barra de navegación izquierda:

Codificación de colores
Las entidades en el diagrama están codificadas por colores según si representan la base de datos relacional o MongoDB:
Las entidades marcadas en rosa son tablas relacionales.
Las entidades resaltadas en verde son colecciones de MongoDB.
Enlaces de entidades
Las líneas entre los cuadros representan las relaciones que conectan las entidades de la base de datos. Si dos cuadros están conectados, las entidades correspondientes se vinculan mediante una clave externa. Las líneas pueden mostrar las siguientes características de las relaciones:
Una pequeña barra a través de un enlace de relación indica una relación uno a uno entre entidades.
Una punta (o "patas de gallo") indica "muchos" en la relación.
Deshacer o rehacer acciones del diagrama
Los diagramas de Relational Migrator admiten las funciones de deshacer y rehacer. Para revertir o volver a aplicar la acción anterior del diagrama, use la capacidad de deshacer o rehacer. Puedes utilizar la barra de herramientas del diagrama o atajos de teclado para realizar estas acciones.
Barra de herramientas
Puedes utilizar el y botones en la barra de herramientas del diagrama:

Atajo de teclado
Como alternativa, puedes usar los atajos de teclado:
Función | Acceso directo de Windows | Atajo de Mac |
|---|---|---|
Undo |
|
|
Redo |
|
|
Vínculos de vista relacional y de MongoDB
Cuando haces clic en un cuadro en la vista relacional o MongoDB, el Relational Migrator resalta la entidad correspondiente en la vista opuesta. Esto te permite ver cómo tus tablas relacionales y tus colecciones de MongoDB están mapeadas entre sí.
Ejemplos
El siguiente ejemplo muestra un diagrama de ejemplo para una base de datos que rastrea pedidos en una tienda.
Visión relacional
Esta vista relacional muestra la relación de varias tablas dentro de una base de datos relacional:

La vista muestra las siguientes relaciones:
En la tabla
Order,OrderIDes la clave primaria.CustomerIDyOrderStatusIDson claves foráneas. Las tablasCustomeryOrderStatuscontienen las referencias de estas claves foráneas, respectivamente.OrderaCustomeryOrderaOrderStatusson ambas relaciones muchos a uno:Un cliente puede tener múltiples pedidos y cada pedido solo aplica a un solo cliente. En este ejemplo, Orden es el padre y Cliente es el hijo.
Un estado de pedido puede aplicarse a múltiples pedidos, y cada pedido solo tiene un único estado de pedido. En este ejemplo, Order es el padre y OrderStatus es el hijo.
En la tabla
OrderLine,OrderLineIDes la clave primaria.OrderIDyProductIDson claves foráneas. Las tablasOrderyProductcontienen las referencias de estas claves foráneas, respectivamente.OrderLineaOrderyOrderLineaProductson ambas relaciones muchos a uno:Una línea de pedido es una transacción individual dentro de un pedido. Un pedido puede tener varias líneas de pedido, y cada línea de pedido se aplica a un solo pedido. En este ejemplo, la línea de pedido es el padre y el pedido es el hijo.
Un producto se puede aplicar a varias filas de pedido, y cada fila de pedido contiene un solo producto. En este ejemplo, OrderLine es el padre y Product es el hijo.
Vista de MongoDB
Esta vista de MongoDB corresponde a la vista relacional previa:

Las colecciones y los tipos de datos presentados en la vista reflejan las reglas de mapeo especificadas para el proyecto.
Los iconos de enlace indican los campos que se asignan a una columna relacional utilizada en una clave externa. Por ejemplo, en la colección Order, el campo OrderStatusID representa una clave foránea que enlaza las tablas Order y OrderStatus.
Nueva reglas de mapeado
Se han creado las siguientes nuevas reglas de mapeo para utilizar mejor el modelo de datos integrado de MongoDB:
La colección
Ordercontiene una regla que asignaOrderLinescomo un Matriz incrustada. LaOrderLinetabla del esquema relacional se asigna como una matriz de objetos dentro de losOrderdocumentos, utilizando la relación de clave externa del esquema relacional.![Ejemplo de regla de mapeo de órdenes]()
La colección
Customercontiene una regla que mapeaOrderscomo un arreglo embebido. La tablaOrderdel esquema relacional se asigna como un arreglo de objetos dentro de los documentosCustomer, usando la relación de clave foránea del esquema relacional.![Ejemplo de regla de asignación de clientes]()
Ambas reglas de mapeo anteriores remueven los campos de ID del mapeo. Dado que los campos OrderLines y Orders están incorporados en sus campos principales en lugar de referenciarse con una clave foránea, los campos de ID no son necesarios para vincular los campos entre sí.

