Deleting all stored procedures, views or functions

The following scripts cleans up an MS SQL database of stored procedures, views and/or functions. Sourced from a forum posting by psyco-simo.

USE [db_name]
CREATE PROCEDURE dbo.__DeleteAllProcedures AS
declare @procName varchar(500)

-- Removes stored procedures
declare cur cursor
for select [name] from sys.objects where [type] = 'p'
open cur
fetch next from cur into @procName
while @@fetch_status = 0
begin
if @procName <> '__DeleteAllProcedures'
exec('drop procedure ' + @procName)
fetch next from cur into @procName
end
close cur
deallocate cur

-- Removes Views
declare cur cursor
for select [name] from sys.objects where [type] = 'v'
open cur
fetch next from cur into @procName
while @@fetch_status = 0
begin
exec('drop view ' + @procName)
fetch next from cur into @procName
end
close cur
deallocate cur

-- Removes Functions
declare cur cursor
for select [name] from sys.objects WHERE [type] = 'fn'
open cur
fetch next from cur into @procName
while @@fetch_status = 0
begin
exec('drop function ' + @procName)
fetch next from cur into @procName
end
close cur
deallocate cur

-- removes itselfs
DROP PROCEDURE __DeleteAllProcedures
GO
exec __DeleteAllProcedures

@Tools @Microsoft