Gostaria de ter meu esquema de banco de dados sincronizado com meu projeto de banco de dados .dbproj do Visual Studio.
No momento, estou usando o SSMS na maior parte do meu trabalho de desenvolvimento de banco de dados e preciso usar manualmente a ferramenta de comparação de esquema do visual studio quando precisar que o esquema db e o .dbproj sejam sincronizados. Por que eu iria querer isso? Porque :
- É a única maneira de verificar as alterações
- É a única maneira de aplicar alterações
- Não fazer isso causará alguns problemas de mesclagem ao obter arquivos (basicamente, se um "obter mais recente" contiver algumas alterações de banco de dados nos objetos db que eu atualizei sem a verificação, uma mesclagem não será acionada e é fácil acompanhar qual versão é qual)
- É bom poder usar os recursos de pesquisa do VisualStudio em uma versão atualizada do esquema
- É bom poder modificar procedimentos armazenados do VS (normalmente quando você renomeou um arquivo) usando os resultados da pesquisa.
Além de automatizar a ferramenta "schema compare" para que ela seja executada a cada 5 minutos (o que dificilmente soa como uma solução "limpa"), existem maneiras de conseguir isso?
Gostaria de continuar usando o SSMS, se possível, mas também estou interessado em maneiras de propagar automaticamente as alterações feitas usando as "Conexões do servidor Explorer / banco de dados" do visual studio no .dbproj.
Respostas:
O SQL Server Management Studio é principalmente uma ferramenta de gerenciamento do SQL Server e, como tal, não é necessariamente criada para oferecer suporte aos cenários que você está procurando.
O Visual Studio Team System 2008 Database Edition e o Visual Studio Team System 2010 Pro / Ultimate incluem as ferramentas Developer de Banco de Dados (VSDB) para ajudar aqueles com extensos ativos de banco de dados a integrar seu esquema / view / proc / etc. desenvolvimento com o desenvolvimento de aplicativos.
O VSDB permite que você faça engenharia reversa dos esquemas do banco de dados existentes nos projetos do Visual Studio, para que você possa controlar os arquivos de script por elemento do esquema por controle de origem. Você também pode modificar / criar scripts de esquema do SQL Server para a criação de praticamente todos os elementos de esquema suportados pelo SQL 2005/2008/2010.
O VSDB também suporta a capacidade de implantar atualizações de esquema de banco de dados completas / parciais em bancos de dados vazios / existentes, onde ele realiza uma enorme quantidade de trabalho para tentar aplicar apenas as alterações necessárias para modificar o banco de dados existente (se presente), de modo que ele espelhe a estrutura de o projeto de banco de dados VSDB de origem.
O VSDB também inclui várias ferramentas para ajudá-lo a comparar esquemas entre projetos de banco de dados e / ou banco de dados e também permite diferenciar e mesclar o conteúdo da tabela.
No entanto, observe que, embora este conjunto de ferramentas seja suportado hoje, a equipe foi desmantelada e o produto está no modo de manutenção. O grupo de produtos SQL Server agora é responsável pela criação de ferramentas para desenvolvedores e trabalha duro para fazer exatamente isso :)
fonte
existem duas maneiras que conheço com os recursos avançados do VS2010 para fazer isso.
fonte