Template Script: Schema\Drop User Schemas.sql

DECLARE @SQL VARCHAR(MAX)
SELECT  @SQL = 'DECLARE @SQL VARCHAR(MAX)
'
 + Util.dbo.StringConcat('SELECT  @SQL = ISNULL(@SQL, '''')
        + ISNULL(Util.dbo.StringConcat(DISTINCT ''USE '
 + d.name + '
ALTER SCHEMA dbo TRANSFER ['' + sc.NAME + ''].[''
                                              + o.NAME + ''];
GO
'', ''''), '''') + ISNULL(Util.dbo.StringConcat(DISTINCT ''USE '
 + d.name + '
DROP SCHEMA ['' + sc.NAME + ''];
GO
'', ''''), '''')
FROM    '
 + d.name + '.SYS.schemas sc
INNER JOIN '
 + d.name + '.sys.objects o ON o.schema_id = sc.schema_id
INNER JOIN '
 + d.name + '.sys.database_principals p ON p.principal_id = sc.principal_id
WHERE   sc.name LIKE ''%\%''
        AND sc.name <> p.name
'
, '
'
) + '
EXEC Util.dbo.PrintLargeText @SQL'

FROM    sys.databases d

--EXEC Util.dbo.PrintLargeText @SQL

EXEC (@SQL)

Description for Template Script: Schema\Drop User Schemas.sql

Todo
Site Map | Printable View | © 2008 - 2012 NuRoN Consulting, INC | Powered by mojoPortal | HTML 5 | CSS | Original design by Andreas Viklund
Share This Using Popular Bookmarking Services