Excluir funções definidas pelo usuário
Você pode excluir (remover) funções definidas pelo usuário no SQL Server 2012 usando o SQL Server Management Studio ou Transact-SQL.
Neste tópico
Antes de começar:
Limitações e restrições
Segurança
Para excluir uma função definida pelo usuário, usando:
SQL Server Management Studio
Transact-SQL
Antes de começar
Limitações e restrições
Você não poderá excluir a função se houver funções Transact-SQL ou exibições no banco de dados que referenciem essa função e forem criadas usando SCHEMABINDING, ou se houver colunas computadas, restrições CHECK ou DEFAULT que referenciem a função.
Você não poderá excluir a função se houver colunas computadas que referenciem essa função e tenham sido indexadas.
Segurança
Permissões
Requer permissão ALTER no esquema ao qual a função pertence ou permissão CONTROL na função.
[Top]
Usando o SQL Server Management Studio
Para excluir uma função definida pelo usuário
Clique no sinal de mais ao lado do banco de dados que contém a função que você deseja modificar.
Clique no sinal de mais ao lado da pasta Programação.
Clique no sinal de mais ao lado da pasta que contém a função que você deseja modificar:
Função com valor de tabela
Função de valor escalar
Função de agregação
Clique com o botão direito do mouse na função a ser excluída e selecione Excluir.
Na caixa de diálogo Excluir Objeto, clique em OK.
Importante Clique em Mostrar Dependências na caixa de diálogo Excluir Objeto para abrir a caixa de diálogo function_name Dependências. Isso mostrará todos os objetos que dependem da função e todos os objetos dos quais a função depende.
[Top]
Usando Transact-SQL
Para excluir uma função definida pelo usuário
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.
-- creates function called “Sales.ufn_SalesByStore” USE AdventureWorks2012; GO CREATE FUNCTION Sales.ufn_SalesByStore (@storeid int) RETURNS TABLE AS RETURN ( SELECT P.ProductID, P.Name, SUM(SD.LineTotal) AS 'Total' FROM Production.Product AS P JOIN Sales.SalesOrderDetail AS SD ON SD.ProductID = P.ProductID JOIN Sales.SalesOrderHeader AS SH ON SH.SalesOrderID = SD.SalesOrderID JOIN Sales.Customer AS C ON SH.CustomerID = C.CustomerID WHERE C.StoreID = @storeid GROUP BY P.ProductID, P.Name ); GO USE AdventureWorks2012; GO -- determines if function exists in database IF OBJECT_ID (N'Sales.fn_SalesByStore', N'IF') IS NOT NULL -- deletes function DROP FUNCTION Sales.fn_SalesByStore; GO
Para obter mais informações, consulte DROP FUNCTION (Transact-SQL).
[Top]