Un simple script T-SQL pour eliminare tous objets d'un Base de données SQL SERVER (vues, fonctions, procédures stockées) :
-- variable pour le nom de l'objet declare @name varchar(1000) -- variable pour contenir le type d'objet declare @xtype varchar(20) -- variable pour contenir la chaîne sql declare @sqlstring nvarchar(4000) declare SPViews_cursor curseur pour SELECT QUOTENAME(ROUTINE_SCHEMA) + '.' + QUOTENAME(ROUTINE_NAME) AS nom, ROUTINE_TYPE AS xtype FROM INFORMATION_SCHEMA.ROUTINES UNION SELECT QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) AS nom, 'VIEW' AS xtype FROM INFORMATION_SCHEMA.VIEWS ouvre SPViews_cursor fetch next de SPViews_cursor dans @name, @xtype while @@fetch_status = 0 begin -- teste le type d'objet s'il s'agit d'une procédure stockée si @xtype = 'PROCEDURE' begin set @sqlstring = 'drop procedure ' + @name exec sp_executesql @sqlstring set @sqlstring = ' ' end -- teste le type d'objet s'il s'agit d'une fonction if @xtype = 'FUNCTION' begin set @sqlstring = ' drop FUNCTION ' + @name exec sp_executesql @sqlstring set @sqlstring = ' ' end -- teste le type d'objet s'il s'agit d'une vue if @xtype = 'VIEW' begin set @sqlstring = 'drop view ' + @name exec sp_executesql @sqlstring set @sqlstring = ' ' end -- récupère l'enregistrement suivant de SPViews_cursor dans @name, @xtype end close SPViews_cursor désalloue SPViews_cursor