Ferramenta de diferenças do servidor de SQL
trabalhar numa equipa onde as pessoas estão propensas a alterar as mesas do servidor dev SQL e a esquecê-las, ou a preparar uma mudança para a implantação e a ter de esperar por essa implantação. Isso deixa nossas tabelas dev e live inconsistentes, causando problemas quando SPROCs são empurrados ao vivo.
Existe uma ferramenta para que eu possa inserir um nome SPROC e verificar todas as tabelas referenciadas nele no dev e live DBs, e notificar quaisquer diferenças?
7 answers
Conheço duas excelentes ferramentas para difundirem estruturas de bases de dados SQL - elas não olham especificamente dentro dos procedimentos armazenados para o seu texto, mas vão mostrar-lhe diferenças estruturais nas suas bases de dados:
- RedGate SQL Compare
- Apexsql's SQL Diff
O Redgate também tem um Localizador de dependências SQL que visualiza dependências de objectos e pode ser bastante útil aqui.
Marc
Para O servidor SQL 2005/2008, abrir o DBDiff funciona muito bem. A grande parte disto é que está livre. Note também que estou escrevendo esta resposta para a versão 0.9 que atualmente funciona para o SQL 2005/2008.
Mostrar-lhe-á as diferenças entre o esquema da base de dados entre uma base de dados de origem que indicar e a base de dados de destino que indicar. Há também botões que você pode clicar que podem atualizar ou criar a tabela que está em questão.
Eu recomendaria SQL compare e SQL Data Compare de Redgate Software . Eu trabalhei com essas ferramentas para vários projetos e eles fizeram um ótimo trabalho. Documentar mudanças também é uma coisa boa a se fazer, mas algumas mudanças são complexas para escrever seu próprio código SQL para (incluindo malabarismo de dados entre tabelas).
As ferramentas redgate criam scripts em questão de segundos e esses scripts estão quase sempre corretos (algumas versões mais antigas tiveram dificuldades com a tabela dependências em grandes bancos de dados, mas ao jogar com as declarações (em uma transação de início / rollback) eu era capaz de corrigir rapidamente esses problemas).
Outro ponto forte nas suites redgate é que você pode salvar seu projeto de comparação. Isto é especialmente útil quando você não quer converter uma determinada tabela (ou dados), você pode excluí-los. Ao carregar o projeto da próxima vez o software irá ignorar automaticamente essas tabelas. Uma desvantagem é o custo de o software (empresas menores com quem trabalhei não queriam comprar o software). SQL compare e SQL data compare em conjunto vai custar-lhe cerca de 800 dólares, mas se você olhar para o tempo que você vai economizar ao liberar você vai economizar muito dinheiro. Há também um julgamento que você pode brincar com (30 dias eu acredito).TentaMicrosoft Visual Studio Database Edition aka Data Dude (anteriormente para profissionais de bases de dados). Fará uma comparação completa do esquema e gerará os scripts necessários para atualizar o esquema alvo.
É claro que isto não deve substituir um processo de construção adequado; -)Se necessitar de uma ferramenta rápida de comparação de esquemas para o servidor de SQL, deverá dar uma vista de olhos a o esquema de dbForge compara para o servidor de SQL.
Fiz um utilitáriomssqlmerge que permite comparar (e fundir) os dados da base de dados MSSQL e os objectos de programação. Ele também permite a busca de uma palavra ou frase em particular através de definições de tabelas e objetos de programação.