Esta página explica como interpretar diagramas criados no Relational Migrator. Cada diagrama é composto por duas exibições, uma para seu banco de banco de dados relacional e outra para seu banco de banco de dados MongoDB . As visualizações mostram os relacionamentos entre entidades em seus bancos de dados.
Visão relacional
Na exibição relacional, cada caixa representa uma tabela em seu banco de banco de dados relacional. O título da caixa indica o nome da tabela.
Cada caixa lista as colunas na tabela correspondente. Para cada coluna, a caixa indica o nome da coluna e seu tipo de dados.
Algumas colunas têm ícones para indicar sua função na tabela:
Um ícone de chave indica a chave primária da tabela.
Um ícone de link indica uma chave estrangeira.
Visualização do MongoDB
Na visualização MongoDB , cada caixa representa uma coleção em seu banco de banco de dados MongoDB . O título da caixa indica o nome da coleção.
Cada caixa lista os campos na coleção correspondente. Para cada campo, a caixa indica o nome do campo e seu tipo de dados.
Se uma collection contiver documentos ou arrays incorporados, esses campos serão mostrados em linha na mesma collection.
Alguns campos têm ícones para indicar sua função na tabela:
Um ícone de chave indica o campo
_idda collection. Quando você utiliza a estratégia de manuseio de chaveswrapped, o campo_idcontém subcampos. Nesse caso, a caixa contém vários ícones de chave que se aplicam a um único campo.Um ícone de link indica que o campo mapeia para uma coluna relacional utilizada em uma chave estrangeira.
Escolher o modo de visualização
O Relational Migrator oferece diferentes modos de visualização do diagrama: Divisão horizontal, Divisão vertical, Visualização relacional e Visualização MongoDB .
Modo de visualização | Descrição |
|---|---|
Divisão horizontal | Exibe a visualização relacional na parte superior e a visualização do MongoDB está na parte inferior. Quando você cria um novo projeto, a Divisão horizontal é o modo de visualização padrão. |
Divisão vertical | Exibe a exibição relacional à esquerda e a exibição do MongoDB à direita. |
Visão relacional | Exibe apenas o diagrama do banco de dados de dados relacional. |
Visualização do MongoDB | Exibe apenas o diagrama do banco de dados de dados MongoDB . |
Para alternar os modos de visualização, clique em uma opção de modo de visualização na barra de navegação à esquerda:

Código de cores
As entidades no diagrama são codificadas por cores com base no fato de representarem o banco de banco de dados relacional ou MongoDB :
As entidades com destaques cor de laranja são tabelas relacionais.
As entidades com destaques em verde são collections do MongoDB .
Links de Entidade
As linhas entre as caixas representam os relacionamentos que conectam as entidades do banco de dados de dados. Se duas caixas estiverem conectadas, as entidades correspondentes estarão vinculadas com uma chave estrangeira. As linhas podem mostrar as seguintes funcionalidades de relacionamentos:
Uma pequena barra em um link de relacionamento indica um relacionamento individual entre entidades.
Uma ponta (ou "pés de corvo") indica "muitos" no relacionamento.
Desfazer ou Refazer Ações do Diagrama
Os diagramas do Relational Migrator suportam funções de desfazer e refazer. Para reverter ou reaplicar a ação do diagrama anterior, use o recurso desfazer ou refazer. Você pode usar a barra de ferramentas do diagrama ou os atalhos de teclado para executar essas ações.
Barra de ferramentas
Você pode usar o e botões na barra de ferramentas do diagrama:

Atalho de teclado
Como alternativa, você pode usar atalhos de teclado:
Função | Atalho do Windows | Atalho para Mac |
|---|---|---|
Undo |
|
|
Redo |
|
|
Links de visualização relacional e MongoDB
Quando você clica em uma caixa na exibição relacional ou MongoDB , o Relational Migrator destaca a entidade correspondente na exibição oposta. Isso permite que você veja como suas tabelas relacionais e as collections do MongoDB são mapeadas umas para as outras.
Exemplos
O exemplo a seguir mostra um diagrama de amostra para um banco de dados de dados que rastreia pedidos em uma loja.
Visão relacional
Esta exibição relacional mostra o relacionamento de várias tabelas dentro de um banco de banco de dados relacional:

A visualização mostra os seguintes relacionamentos:
Na tabela
Order,OrderIDé a chave primária.CustomerIDeOrderStatusIDsão chaves estrangeiras. As tabelasCustomereOrderStatuscontêm as referências para essas chaves estrangeiras, respectivamente.OrderparaCustomereOrderparaOrderStatussão relacionamentos muitos-para-um:Um cliente pode ter vários pedidos, e cada pedido só se aplica a um único cliente. Neste exemplo, o pedido é o pai e o cliente é o filho.
Um status de pedido pode ser aplicado a vários pedidos, e cada pedido tem apenas um único status de pedido. Neste exemplo, Order é o pai e OrderStatus é o filho.
Na tabela
OrderLine,OrderLineIDé a chave primária.OrderIDeProductIDsão chaves estrangeiras. As tabelasOrdereProductcontêm as referências para essas chaves estrangeiras, respectivamente.OrderLineparaOrdereOrderLineparaProductsão relacionamentos muitos-para-um:Uma linha de pedido é uma transação individual dentro de um pedido. Um pedido pode ter várias linhas de pedido e cada linha de pedido se aplica a um único pedido. Neste exemplo, OrderLine é o pai e Order é o filho.
Um produto pode ser aplicado a várias linhas de pedido, e cada linha de pedido contém um único produto. Neste exemplo, OrderLine é o pai e Agent é o filho.
Visualização do MongoDB
Esta visualização MongoDB corresponde à visualização Relacional anterior:

As collections e os tipos de dados apresentados na visualização refletem as regras de mapeamento especificadas para o projeto.
Os ícones de link indicam campos que mapeiam para uma coluna relacional usada em uma chave estrangeira. Por exemplo, na coleção Order , o campo OrderStatusID representa uma chave externa que vincula as tabelas Order e OrderStatus .
Novas regras de mapeamento
As seguintes novas regras de mapeamento foram criadas para melhor utilizar o modelo de dados incorporado do MongoDB:
A coleção
Ordercontém uma regra que mapeiaOrderLinescomo umaarray embarcada . A tabelaOrderLinedo esquema relacional é mapeada como uma array de objetos dentro dos documentosOrder, usando o relacionamento de chave estrangeira do esquema relacional.![Exemplo de regra de mapeamento de pedidos]()
A coleção
Customercontém uma regra que mapeiaOrderscomo uma array incorporada. A tabelaOrderdo esquema relacional é mapeada como uma array de objetos dentro dos documentosCustomer, usando o relacionamento de chave estrangeira do esquema relacional.![Exemplo de regra de mapeamento do cliente]()
Ambas as regras de mapeamento anteriores removem os campos ID do mapeamento. Como os campos OrderLines e Orders estão incorporados em seus campos pai, em vez de serem referenciados com uma chave estrangeira, os campos ID não são necessários para vincular os campos.

