Realizar diff entre base de dados no Oracle SQL Developer

Quando trabalhamos com equipes distribuídas é comum termos cópias de bases de dados em locais diferentes e para ambientes diferentes. Em alguns casos não são utilizadas ferramentas de monitoração de alteração de base e confiar na comunicação da equipe nem sempre é uma boa prática. Nesses casos, para resolver situações no qual alguém altera uma base e não notifica o restante da equipe ou para migração dessas alterações entre ambientes diferentes, o Oracle SQL Developer tem um recurso chamado Database Diff.

Caso você não tenha o Oracle SQL Developer, baixe do site da Oracle e instale. Execute e crie duas conexões: uma da base de origem e outra da de destino. Selecione Tools, Database Diff. Irá abrir o Diff Wizard.

Diff Wizard
Diff Wizard

Escolhas as opções e clique em Next. Clique em Lookup para buscar os objetos na base de origem, adicione o que você quer e clique em Next. Verifique o sumário e clique em Finish.

Após isso é só aguardar a comparação.

Diff Report
Diff Report

Clique em Generate Script. Escolha o caminho que queira salvar e clique em Apply. Se quiser, execute o script para corrigir as diferenças.

Sobre: Thiago Galbiatti Vespa

Thiago Galbiatti Vespa é mestre em Ciências da Computação e Matemática Computacional pela USP e bacharel em Ciências da Computação pela UNESP. Coordenador de projetos do JavaNoroeste, membro do JCP (Java Community Process), consultor Oracle, arquiteto de software de empresas de médio e grande porte, palestrante de vários eventos e colaborador de projetos open source. Possui as certificações: Oracle Certified Master, Java EE 5 Enterprise Architect – Step 1, 2 and 3; Oracle WebCenter Portal 11g Certified Implementation Specialist; Oracle Service Oriented Architecture Infrastructure Implementation Certified Expert; Oracle Certified Professional, Java EE 5 Web Services Developer; Oracle Certified Expert, NetBeans Integrated Development Environment 6.1 Programmer; Oracle Certified Professional, Java Programmer; Oracle Certified Associate, Java SE 5/SE 6