Compartilhar via


Engenharia Reversa de um Banco de dados SQL Server com Visio

Introdução

Uma boa prática para equipes de desenvolvimento e bancos de dados é gerar e manter uma documentação atualizada do Modelo de dados de cada banco de dados de sua Produção.

O MS Visio é um produto que auxilia muito nesta tarefa, vamos mostrar neste artigo como efetuar a Engenharia Reversa de um Modelo de Dados em SQL Server para agilizar seu trabalho de documentação. Para esta demonstração utilizaremos a versão Visio 2010.

Com isso, podemos manter o conteúdo de um Modelo de Dados sempre atualizado para todos que manipulam uma ou mais tabelas de um banco de dados SQL Server possam sempre consultar uma fonte de informações confiável para o desenvolvimento de soluções.

Esta documentação ajuda a definir também diversas ações de manutenção e desenvolvimento de softwares. Isto torna a tarefa de Engenharia Reversa ainda mais necessária, principalmente em grandes equipes de TI.

Criando um novo Diagrama no Visio

Para que possamos realizar uma Engenharia Reversa de todas às tabelas de um banco de dados SQL Server através do MS Visio, precisamos antes de tudo criar um novo Diagrama de Modelo de Dados.

Vamos demonstrar passo à passo como criar este Diagrama e como utilizar este importante recurso para gerenciamento de um banco de dados.

Para iniciar, clique no menu "File" e selecione a opção "New", assim o Visio irá disponibilizar uma nova janela de opções de Modelos de Diagramas (Imagem 1).

Imagem 1 - See this Visio menu in the image below

Os Modelos de Diagramas exibidos nesta tela são todos os previamente instalados junto com o Visio. Para nossa tarefa de Engenharia Reversa, precisamos selecionar a opção "Software and Database" (Imagem 2).

Caso esta opção não esteja disponível, basta utilizar a opção de "Adicionar/Remover Programas" no "Painel de Controle" do seu sistema operacional Windows e reinstalar esta opção de Modelos.

Imagem 2 - See this Template window in the image below

Assim que você selecionar o Modelo "Software and Database", diversas opções de Diagramas relacionados ao tema serão exibidos para sua escolha.

Neste caso, vamos utilizar o Diagrama "Database Model" (Imagem 3), que possibilitará o Visio à reconhecer todos os objetos relacionados à um banco de dados relacional SQL Server. Faça um duplo-clique neste Diagrama e uma nova página em branco será disponibilizada para criação das nossas tabelas.

Imagem 3 - See this output SQL script in the image below

Como vamos obter todas às tabela diretamente do nosso banco de dados no SQL Server, não iremos modificar nenhuma Propriedade nesta página em branco e nem inserir outros objetos. Isto porque, podemos perder parte das alterações e personalizações realizadas.

Então caso desejar modificar e personalizar exibições do documento e de seus objetos, deixe para fazer após a execução da Engenharia Reversa.

Para iniciarmos a Engenharia Reversa de nosso banco de dados através do Visio, em nossa nova página do Diagrama de Modelo de Dados, vamos clicar no menu "Database" e selecionar o botão "Reverse Engineer" (Imagem 4).

Imagem 4 - See this menu option in the image below

Utilizando o Assistente

Logo quando você clica no botão "Reverse Engineer" o Visio inicializará um Assistente de Engenharia Reversa para obter as configurações estruturais dos objetos selecionados para importação em sua nova página.

A primeira configuração que será necessária definir para obter nossa estrutura de tabelas será selecionar o driver "Microsoft SQL Server" e configurar a Fonte de Dados que o Visio utilizará para esta tarefa (Imagem 5).

Imagem 5 - See this Drivers and Data Source window in the image below

A configuração da Fonte de Dados poderá ser realizada através de um arquivo DSN ou com o programa de "Fontes de Dados ODBC" que se encontra nas "Ferramentas Administrativas" do "Painel de Controle" do seu Windows. Como esta tarefa é comum para desenvolvedores e Administradores de Bancos de Dados eu não irei detalhar este pequeno "passo à passo".

Quando definir sua Fonte de Dados, basta clicar no botão "Avançar" para exibir a tela de seleção dos tipos de objetos que serão importados para dentro do Visio através da Engenharia Reversa (Imagem 6).

Vamos selecionar a opção "Tabelas" e a sub-opção "Índices", para que o Assistente do Visio obtenha às tabelas e seus respectivos índices diretamente no seu banco de dados. Para seguirmos nossas configurações da Engenharia Reversa, basta clicar no botão "Avançar".

Imagem 6 - See this type object window in the image below

O Assistente agora vai abrir uma janela com todas às tabelas de usuário de seu banco de dados. Você tem a opção de selecionar uma ou mais tabelas para esta tarefa de Engenharia Reversa. Para utilizar todas às tabelas, você poderá clicar no botão "Selecionar Tudo" (Imagem 7).

Esta opção é interessante, porque você poderá criar diversos documentos com grupos de tabelas ou outros objetos de seu banco de dados, de acordo com sua necessidade. Quando terminar de definir às tabelas para seu Diagrama de Modelo de dados, clique no botão "Avançar".

Imagem 7 - See this "tables and/or views" window in the image below

Para concluir, o Assistente de Engenharia Reversa exibe todas às tabelas que você determinou para importação no Visio (Imagem 8). Este processo vai transformar as tabelas em objetos e incluir em suas propriedades as definições dos índices e da chave primária de cada tabela.

Imagem 8 - See this Finish wizard in the image below

Após a execução da Engenharia Reversa, as tabelas são criadas no seu documento do Visio (Imagem 9) com os seus respectivos campos, incluindo detalhes como tipo de dados e outros. Todos os índices de suas tabelas serão destacados em negrito.

As tabelas que tem chave primária, também serão exibidas em negrito e ao lado exibirão a identificação de sua chave primária.

Imagem 9 - See this Visio document in the image below

Neste momento, após a execução da Engenharia Reversa de seu banco de dados você poderá personalizar a visualização de suas tabelas com ou sem os detalhes de seus campos ou índices.


Conclusão

Possuir mais de uma possibilidade de obter informações sobre nossas tabelas em um banco de dados é algo muito útil, principalmente se esta alternativa para obter a estrutura de dados desejada é tão simples e de rápida execução.

A Engenharia Reversa de um banco de dados através do MS Visio é um recurso que possibilita manter sua documentação atualizada, sem depender da necessidade de coleta destas informações por um usuário especialista em SQL Server.

Isto ajuda a poupar o tempo de modelagem de um diagrama para outras tarefas de análise e decisão entre todos os envolvidos na utilização dos dados e de sua estrutura do banco de dados.


Referências


Veja Também


Outros Idiomas