Created
January 28, 2022 19:49
-
-
Save darrenmaginnis/7e66029c03530b70ddde89b01e1953d6 to your computer and use it in GitHub Desktop.
DROP all user created Stored Procedures, Functions, User Types, and Views
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- Stored Procedures | |
PRINT 'Dropping Stored Procedures' | |
DECLARE @sqlDropProcedure NVARCHAR(MAX) = N''; | |
SELECT @sqlDropProcedure += 'DROP PROCEDURE [' + OBJECT_SCHEMA_NAME(object_id) + '].[' + name + ']; ' | |
FROM sys.procedures | |
WHERE is_ms_shipped = 0 | |
ORDER BY OBJECT_SCHEMA_NAME(object_id), name; | |
EXEC sp_executesql @sqlDropProcedure; | |
-- Functions | |
PRINT 'Dropping Functions' | |
DECLARE @sqlDropFunction NVARCHAR(MAX) = N''; | |
SELECT @sqlDropFunction += 'DROP FUNCTION [' + OBJECT_SCHEMA_NAME(object_id) + '].[' + OBJECT_NAME(object_id) + ']; ' | |
FROM sys.objects | |
WHERE is_ms_shipped = 0 | |
AND type IN ('FN', 'IF', 'TF') | |
ORDER BY OBJECT_SCHEMA_NAME(object_id), OBJECT_NAME(object_id); | |
EXEC sp_executesql @sqlDropFunction; | |
-- User Types | |
PRINT 'Dropping User Types' | |
DECLARE @sqlDropType NVARCHAR(MAX) = N''; | |
SELECT @sqlDropType += 'DROP TYPE [' + s.name + '].[' + t.name + ']; ' | |
FROM sys.types t | |
JOIN sys.schemas s | |
ON s.schema_id = t.schema_id | |
WHERE t.is_user_defined = 1 | |
ORDER BY s.name, t.name | |
EXEC sp_executesql @sqlDropType; | |
-- Views | |
PRINT 'Dropping Views' | |
DECLARE @sqlDropView NVARCHAR(MAX) = N''; | |
SELECT @sqlDropView += 'DROP VIEW [' + s.name + '].[' + v.name + ']; ' | |
FROM sys.views v | |
JOIN sys.schemas s | |
ON s.schema_id = v.schema_id | |
WHERE v.is_ms_shipped = 0 | |
ORDER BY s.name, v.name; | |
EXEC sp_executesql @sqlDropView; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment