Diferenças em tabelas

O SQL Server nos da um utilitário de linha de comando (a partir da versão 2005) chamado TableDiff.exe que tem por objetivo exibir as diferenças entre tabelas. Para maiores informações recomendo os links Utilitário tablediff (MSDN) e Comparando duas tabelas: tablediff (Blog do Alexandre Lopes).

Já partindo para um uso mais extenso recomendo a utilização do SQL Compare da Red Gate, esse é um utilitário desenvolvido que proporciona uma série de features tais como (vou listar apenas quatro dessas): 

  • Gerar scripts e aplicar scripts;
  • Comparar uma base dados, um device de backup, um snapshot ou até mesmo um diretório com scripts contidos;
  • Comparar os schemas, owner;
  • permitir colocar a clausula With Encription ao gerar as stored procedures no banco de dados destino.

De maneira simplificada o SQL Compare faz um mapeamento dos objetos e exibe graficamente, veja abaixo a tela inicial para um novo projeto.

A seguir a tela Owner Mapping.

A guia Options fornece diversas opções como a de definir que no destino os objetos que permitem sejam criptografados.

 

Ao executar a comparação teremos um mapeamento completo de objetos, já classificados pelas diferenças para facilitar a analise.

Com tantos recursos visualizar as diferenças não é uma tarefa que nos dará trabalho, basta marcar o objeto e um painel na parte inferior da tela irá abrir com as diferenças nos scripts.

Show Object Synchronization Script

Essa opção pode ser acessada com o botão direito do mouse sobre o painel de resultados. Um painel com os scripts para atualização irá ser exibido na tela, esses scripts podem ser sobre um ou mais objetos que estão sendo comparados.

Synchronization Wizard

Outra grande feature deste software é a opção de um Wizard que permite aplicar as atualizações de maneira simplificada.

Importante salientar que essa Wizard não faz nada que previamente tenhamos tido a opção de analisar, ainda assim é possível solicitar a geração dos scripts, ou sincronizar diretamente e ainda assim por segurança temos uma opção de fazer um backup antes de aplicar a sincronização.

Para finalizar, na minha opinião o SQL Compare é um produto completo, que além de facilitar com o uso de diversos Wizards, proporciona de maneira intuitiva e organizada as informações para analise.

Abraço, Rodrigo

 

Author: SQLCrespi

Rodrigo Crespi é MVP Data Platform, MCT, MCSE, MCSA, MCIT, MCDBA e MCP em SQL Server, possuí outras certificações em .NET Framework, Dynamics CRM e etc. Iniciou trabalhando com SQL Server na versão 6.5 na época como desenvolvedor, logo direcionou a sua carreira para a área de administração de bancos de dados. Atualmente é Sócio da CrespiDB – Soluções em Plataformas de Dados, além de professor universitário na Uniftec – Caxias do Sul Autor de diversos artigos publicados em sites e revistas sobre SQL Server e engenharia de software, mantem o canal SQLCrespi no Youtube, o blog SQLCrespi, além de ser dedicado ao SQL Server RS PASS Chapter Leader do grupo de profissionais em SQL Server do Rio Grande do Sul.

2 thoughts on “Diferenças em tabelas

Deixe uma resposta