Desenvolvimento - C#
Visual Studio Team System 2008 DataBase Edition Parte III: Comparação de Dados
Neste artigo vamos ver a ferramenta que comparação de dados que acompanha esta edição. Antes de começar é importante você ler no artigo “Visual Studio Team System 2008 DataBase Edition Parte I: Introdução”, algumas consideração sobre as versões do DataBase Editon.
por Fernando AmaralNo artigo anterior estudamos a ferramenta de comparação de schemas de banco de dados do Visual Studio Team System DataBase Edition. Neste artigo vamos ver a ferramenta que comparação de dados que acompanha esta edição. Antes de começar é importante você ler no artigo “Visual Studio Team System 2008 DataBase Edition Parte I: Introdução”, algumas consideração sobre as versões do DataBase Editon.
Muito mais do que comparar dados, a ferramenta é capaz de gerar os scripts necessários para igualar os dados entre os bancos. Para criar este tutorial, criei uma segunda instancia do AdventureWorks2008, que nomeei como AdventureWorks2008II, em seguida fiz uma alteração em uma coluna de um registro da tabela Person. Address, trocando o número 1970 por 1973.
Com esta pequena diferença entre os dois bancos de dados, podemos iniciar nossa experiência. Você pode acessar a ferramenta de comparação de dados através do menu Data, Data Compare, New Data Comparation
Inicialmente você deve informar o banco de dados de origem (source) e de destino (target). Vamos recordar a função de cada um: qualquer script de atualização gerado será visando tornar o banco de destino igual ao banco de origem. Você pode selecionar ou alterar uma conexão existente ou mesmo criar uma nova conexão. Abaixo temos algumas opções quanto ao tipo de comparação a ser feita, com descrições bem óbvias. Desmarcar a opção Identical records traz um resultado de comparação mais limpo, útil quando existirem muitas diferenças entre os bancos de dados comparados, porém para nosso exemplo vamos deixar a opção marcada.
Em seguida podemos definir, em nível de coluna, aonde queremos realizar as comparações. Vamos manter todos os valores marcados:
A partir deste momento o VS inicia a comparação. Lembre-se que dependendo da dimensão de seu banco de dados, este processo pode levar horas, ou até dias.
O resultado é apresentado. Note que a tabela Person.Adress aparece marcada. Selecionando a mesma, podemos ver abaixo o valor da coluna AdressLine1 no banco de dados de origem, indicado pela seta apontando para a direita, com o banco de dados de destino, indicado pela seta apontando para a esquerda.
Vamos agora produzir o script para atualizar o banco de dados de destino. Clique em Refresh Update Script na barra de ferramentas de comparação de dados:
O script é gerado na janela Data Update Script, veja abaixo, no detalhe, o comando Update definido o valor para a coluna AdressLine1:
Agora vamos processar o script no banco de dados alvo. Clique em Write Updates:
Veja que acima do resultado de comparação é informado que uma tabela foi atualizada.
Para fazer uma nova comparação e ver se realmente a diferença foi extinta, clique em refresh na barra de ferramentas de comparação de dados:
Conclusão
Neste artigo aprendemos a fazer a comparação de dados utilizando Visual Studio Team System 2008 DataBase Edition 2008. No próximo artigo, vamos aprender a fazer a geração automática de dados.