T-SQL: Como podemos excluir todos os objetos em um banco de dados?

    Um script T-SQL simples para eliminar tudo objetos de uma banco de dados SQL SERVER (visualizações, funções, procedimentos armazenados):

    T-SQL: Como podemos excluir todos os objetos em um banco de dados?

    - variável para o nome do objeto declarar @name varchar (1000) - variável para manter o tipo de objeto declarar @xtype varchar (20) - variável para manter a string sql declarar @sqlstring nvarchar (4000) declarar SPViews_cursor cursor para SELECT QUOTENAME (ROUTINE_SCHEMA) + '.' + QUOTENAME (ROUTINE_NAME) AS name, ROUTINE_TYPE AS xtype FROM INFORMATION_SCHEMA.ROUTINES UNION SELECT QUOTENAME (TABLE_SCHEMA) + '.' + QUOTENAME (TABLE_NAME) AS name, 'VIEW' AS xtype FROM INFORMATION_SCHEMA.VIEWS abrir SPViews_cursor buscar próximo de SPViews_cursor em @name, @xtype while @@ fetch_status = 0 begin - testar tipo de objeto se for um procedimento armazenado se @xtype = 'PROCEDURE' begin set @sqlstring = 'drop procedure' + @name exec sp_executesql @sqlstring set @sqlstring = '' end - teste o tipo de objeto se for uma função se @xtype = 'FUNCTION' begin set @sqlstring = ' drop FUNCTION '+ @name exec sp_executesql @sqlstring set @sqlstring =' 'end - teste o tipo de objeto se for uma visão se @xtype =' VIEW 'begin set @sqlstring =' drop view '+ @name exec sp_executesql @sqlstring set @sqlstring = '' end - obtém a próxima busca de registro próxima de SPViews_cursor para @name, @xtype end close SPViews_cursor deallocate SPViews_cursor





    Adicione um comentário do T-SQL: Como podemos excluir todos os objetos em um banco de dados?
    Comentário enviado com sucesso! Vamos analisá-lo nas próximas horas.