-- Drop all SP
declare @dropSp varchar(max)=''select @dropSp=@dropSp+'DROP PROCEDURE '+QUOTENAME(SCHEMA_NAME(obj.schema_id))+'.'+ QUOTENAME(RTRIM(s.name)) +';'+CHAR(13)FROM sysobjects sleft join sys.objects objon s.id = obj.object_id and s.name=obj.nameWHERE s.[type] = 'P' AND category = 0 ORDER BY s.[name]--EXEC (@SQL)Print @dropSpgo
/* Drop all views */
declare @dropViews varchar(max) =''select @dropViews=@dropViews+'DROP VIEW '+QUOTENAME(SCHEMA_NAME(obj.schema_id))+'.'+ QUOTENAME(RTRIM(s.name)) +';'+CHAR(13)FROM sysobjects sleft join sys.objects objon s.id = obj.object_id and s.name=obj.nameWHERE s.[type] = 'V' AND category = 0 ORDER BY s.[name]--EXEC (@dropViews)Print @dropViewsgo /* Drop all functions */declare @dropFN varchar(max) =''select @dropFN=@dropFN+'DROP FUNCTION '+QUOTENAME(SCHEMA_NAME(obj.schema_id))+'.'+ QUOTENAME(RTRIM(s.name)) +';'+CHAR(13)
FROM sysobjects sleft join sys.objects objon s.id = obj.object_id and s.name=obj.nameWHERE s.[type] IN (N'FN', N'IF', N'TF', N'FS', N'FT') AND category = 0 ORDER BY s.[name]--EXEC (@dropFN)Print @dropFNgo/* Drop all Foreign Key constraints */
DECLARE @SQL VARCHAR(MAX)=''SELECT @SQL = @SQL + 'ALTER TABLE ' + QUOTENAME(DB_NAME())+'.'+ QUOTENAME(C.TABLE_SCHEMA) + '.' + QUOTENAME(C.TABLE_NAME) + ' DROP CONSTRAINT [' + RTRIM(C.CONSTRAINT_NAME) +'];' + CHAR(13)FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS CWHERE C.CONSTRAINT_TYPE = 'FOREIGN KEY' --EXEC (@SQL)PRINT @SQLGO
--Drop all primary keyDECLARE @SQL VARCHAR(MAX)=''SELECT @SQL = @SQL + 'ALTER TABLE ' + QUOTENAME(DB_NAME())+'.'+ QUOTENAME(C.TABLE_SCHEMA) + '.' + QUOTENAME(C.TABLE_NAME) + ' DROP CONSTRAINT [' + RTRIM(C.CONSTRAINT_NAME) +'];' + CHAR(13)FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS CWHERE C.CONSTRAINT_TYPE = 'PRIMARY KEY'--EXEC (@SQL)PRINT @SQL
GO/* Drop all tables */DECLARE @SQL VARCHAR(MAX)=''select @SQL = @SQL+'drop TABLE '+QUOTENAME(DB_NAME())+'.'+QUOTENAME(SCHEMA_NAME(obj.schema_id))+'.'+ QUOTENAME(RTRIM(s.name)) +';'+CHAR(13)
FROM sysobjects sleft join sys.objects objon s.id = obj.object_id and s.name=obj.nameWHERE s.[type] = 'u' AND category = 0 ORDER BY s.[name]--EXEC (@dropViews)Print @SQLgo