none
Alteração de Procedures em massa RRS feed

  • Pergunta

  • Olá pessoal,

    Tenho um ambiente de DEV, onde desenvolvo todas as procedures necessárias. Após o desenvolvimento, subimos todas as procedures para uma instância de homologação.

    Acontece que nesta etapa, existem muitas modificações onde temos que alterar as procedures e subir para homologação novamente.

    Existe algum script em que eu possa fazer um ALTER PROCEDURE em massa? sem precisar juntar todo o código de procedures em um único arquivo? Ou o caminho é atualizar procedure por procedure?

    Agradeço desde já a ajuda!

    quinta-feira, 10 de novembro de 2016 16:42

Respostas

  • Sergio,

    Esse processo que demonstrei é extremamente rápido de fazer e isso garante que todas as suas procs estejam atualizadas.

    Os procedimentos que teriam que ser feitos seriam:

    1) Gerar os Scripts

    2) Substituir a palavra "CREATE" por "ALTER"

    3) Executar o novo script na base que deseja

    Acredito que seja simples e rápido.

    Se deseja automatizar isso, seria preciso fazer um job específico e dar uma pesquisada na internet para achar uma alternativa

    Valeu!


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    • Marcado como Resposta Sergio Marchetti sexta-feira, 11 de novembro de 2016 18:31
    sexta-feira, 11 de novembro de 2016 17:33

Todas as Respostas

  • Olá,

    Você pode gerar scripts de criação das procedures (mas caso já existam, pode substituir a palavra CREATE por ALTER)

    Siga os passos:

    1) Botão direito sobre a database que quer extrair as procedures


    2) Escolha todas ou apenas algumas procedures

    3) Marque para gerar em uma nova janela e rode o script na database desejada (fique atento que precisa ser alterada a primeira linha do script que define qual databse de destino)


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    • Sugerido como Resposta André SeccoMVP sexta-feira, 11 de novembro de 2016 11:24
    quinta-feira, 10 de novembro de 2016 17:09
  • Deleted
    quinta-feira, 10 de novembro de 2016 20:51
  • Olá José Diz,

    Muito obrigado pela indicação dos e-books. No caso seria a segunda opção. Enviar os procedimento alterados e/ou criados em desenvolvimento para homologação.


    sexta-feira, 11 de novembro de 2016 16:32
  • Olá André,

    Muito obrigado pela sugestão. Conhecia um pouco este recurso de geração de scripts, mas estava querendo algo mais automático e rápido. Tipo um script que detecta as alterações no ambiente de desenvolvimento e já sincroniza com o ambiente de homologação.

    Abraços

    sexta-feira, 11 de novembro de 2016 16:34
  • Sergio,

    Esse processo que demonstrei é extremamente rápido de fazer e isso garante que todas as suas procs estejam atualizadas.

    Os procedimentos que teriam que ser feitos seriam:

    1) Gerar os Scripts

    2) Substituir a palavra "CREATE" por "ALTER"

    3) Executar o novo script na base que deseja

    Acredito que seja simples e rápido.

    Se deseja automatizar isso, seria preciso fazer um job específico e dar uma pesquisada na internet para achar uma alternativa

    Valeu!


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    • Marcado como Resposta Sergio Marchetti sexta-feira, 11 de novembro de 2016 18:31
    sexta-feira, 11 de novembro de 2016 17:33
  • Muito obrigado André!
    sexta-feira, 11 de novembro de 2016 18:32
  • Deleted
    sexta-feira, 11 de novembro de 2016 21:47
  • Andre,

    na minha opiniao, isto eh uma duvida relativa a procedimento de desenvolvimento de software.

    Para cada versao do seu sistema, voce deveria ter um script a parte com as Procedures, Functions, Triggers, Views da versao.

    Alguns preferem utilizar controles de versionamento de fontes como CVS, com integracao as IDEs (Visual Studio por exemplo), outros mantem simplesmente arquivos de script com o codigo destes objetos.

    Isto pode ser utilizado, inclusive, como protecao ao codigo-fonte, uma vez que voce poderia utilizar a clausula ENCRYPTION no create/alter destes objetos, desta forma seu codigo-fonte nao fica aberto pra qualquer um bisbilhotar...

    Caso nao considere utilizar desta forma, a geracao de scripts que os colegas sugeriram eh a melhor opcao no momento.

    Abcs.

    Pericles Sevegnani

    http://blogsqlserver.blogspot.com.br/

    segunda-feira, 14 de novembro de 2016 02:25