Alterando o schema de objetos em lote

No vou entrar aqui no mrito do que so os schemas e como especificamos (deixemos isso para um outro momento).
Quero apenas deixar o seguinte cenrio:
Um usurio criou uma srie de scripts e, ao aplic-lo no banco, todos os objetos ficaram com o nome do usurio no schema:usurio.procedure, usuario.function, usuario.table

Como ajustar isso, sem que seja necessrio abrir cada objeto individualmente e colocar no schema correto (vamos usar o schema dbo aqui, para simplificar as coisas)?

Para alterar oschema de um objeto, deve ser executado o seguinte comando:

Agora, vamos executar isso em lote:

Opo 1: Cursor

Opo 2: Concatenao e execuo (abordagem que eu prefiro)

Por hoje era isso… Espero que seja tilpara voc!

  • PS: Sim, voc poderia substituir a query na INFORMATION_SCHEMA pela query na sys.objects com join na sys.schemas, sem maiores problemas…

[]’s!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.