terça-feira, 30 de dezembro de 2008

Como alterar o nome do Schema de tabelas e stored procedures no SQL Server 2005

Me deparei com esta pergunta ao restaurar um backup de banco em minha máquina. Precisei transferir o schema do usuário, aqui ficticio chamado 'loginuser' para o dbo. Para tal, utilizei o comando:

SELECT 'ALTER SCHEMA dbo TRANSFER ' + TABLE_SCHEMA + '.' + TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'loginuser'

SELECT 'ALTER SCHEMA dbo TRANSFER ' + s.Name + '.' + p.Name FROM sys.Procedures p INNER JOIN
sys.Schemas s on p.schema_id = s.schema_id WHERE s.Name = 'loginuser'

Como resultado obtive as linhas a serem executadas para a alteração propriamente dita. E pronto !

Fonte: http://weblogs.asp.net/steveschofield/archive/2005/12/31/change-schema-name-on-tables-and-stored-procedures-in-sql-server-2005.aspx

Um comentário:

Danilo disse...

Opa! Valew, amigo. Me adiantou um bom lado aqui. Estava procurando EXATAMENTE isso e funcionou perfeitamente.
Abrazz!