DROP FUNCTION (Transact-SQL)
Удаляет из текущей базы данных одну или несколько пользовательских функций. Пользовательские функции создаются с помощью инструкции CREATE FUNCTION и изменяются с помощью инструкции ALTER FUNCTION.
Синтаксис
DROP FUNCTION { [ schema_name. ] function_name } [ ,...n ]
Аргументы
schema_name
Имя схемы, к которой принадлежит пользовательская функция.function_name
Имя удаляемой пользовательской функции или функций. Указание имени схемы является необязательным. Невозможно указать имя сервера и имя базы данных.
Замечания
При выполнении инструкции DROP FUNCTION произойдет сбой, если в базе данных существуют функции или представления языка Transact-SQL, созданные с ключевым словом SCHEMABINDING и содержащие ссылки на удаляемую функцию, или если база данных содержит вычисляемые столбцы, ограничения CHECK или DEFAULT, которые ссылаются на эту функцию.
При выполнении инструкции DROP FUNCTION произойдет сбой, если имеются вычисляемые столбцы, которые содержат ссылки на удаляемую функцию и которые были проиндексированы.
Разрешения
Для вызова инструкции DROP FUNCTION у пользователя должно быть как минимум разрешение ALTER на схему, которой принадлежит функция, или разрешение CONTROL на функцию.
Примеры
А. Удаление функции
В следующем примере пользовательская функция fn_SalesByStore удаляется из схемы Sales в образце базы данных База данных AdventureWorks2008R2. Создание этой функции описано в примере Б в разделе CREATE FUNCTION (Transact-SQL).
USE AdventureWorks2008R2;
GO
IF OBJECT_ID (N'Sales.fn_SalesByStore', N'IF') IS NOT NULL
DROP FUNCTION Sales.fn_SalesByStore;
GO