Atualização parcial de banco com Erwin

Quando estamos habituados a modelagem de banco de dados, principalmente em cenários de Data warehouse, nos deparamos com situações onde é muito trabalhoso promover uma atualização da estrutura do banco tentando preservar algum dado que já esteja populado, manter sua estrutura dentro do Erwin ainda é muito útil durante todo o ciclo do desenvolvimento, pois entre as muitas vantagens na agilidade da manutenção do banco, poderia citar por exemplo a simples alteração de um tipo de campo em uma chave primária por exemplo, parece simples mas se torna uma tortura pois precisa ser refletida em todas as chaves estrangeiras, e vejo amigos meus que abandonam o Erwin sofrerem com este tipo de situação.

Para quem está vivendo o drama de ter que alterar uma estrutura de banco em cascata, não fique desesperado,  ainda é possível de forma ágil promover atualização parcial da estrutura do banco de dados  preservando dados e estrutura pré-existente. O que nós iremos fazer é exportar apenas o script da estrutura de tabelas que desejamos e executa-lo. No Erwin quando você promove uma alteração assim, na chave primária, ele automaticamente já altera o tipo em todas as chaves estrangeiras relacionadas. E acreditem isso é uma grande mão na roda em bancos corporativos com projetos de missão crítica, onde uma chave primária tem relação até com 30 tabelas. Se você utilizava a opção Forward sem antes filtrar as entidades que desejava alterar, pode acabar perdendo alguma coisa que não queria, o que você precisa fazer é um forward parcial, utilizando a opção Filter. 

image1

Para isso, basta selecionar as entidades que deseja atualizar, e clicar sobre o botão “Forward Engineer Schema Generation”  indicado na imagem acima, após isso você deverá validar a filtragem apenas dos elementos selecionados clicando sobre o botão “Filter”.

image2image1

E ao invés de implementar a alteração diretamente no banco conforme possibilitaria o botão “Generate”, clique sobre o botão “Report”, ele lhe permitirá salvar todo o ddl de criação da estrutura dos dados, e assim permite muito maior controle sobre possíveis erros na execução da atualização.

image1É importante ainda antes mesmo de exportar o script de alteração do banco, desmarcar todas as opções de exportação de index conforme ilustração, sem isso ele gera baste index desnecessário, além de primary keys e foreign keys .

image1

E pronto, geralmente executo o script diretamente sem resultar erros.

Abraços

 

Translate »