DROP FUNCTION (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure конечной точке аналитики платформы Аналитики Azure Synapse Analytics (PDW) в Microsoft Fabric Хранилище в Microsoft Fabric

Удаляет из текущей базы данных одну или несколько пользовательских функций. Определяемые пользователем функции создаются с помощью инструкции CREATE FUNCTION и изменяются с помощью инструкции ALTER FUNCTION.

Функция DROP поддерживает скомпилированные в собственном коде скалярные определяемые пользователем функции. Дополнительные сведения см. в разделе Скалярные определяемые пользователем функции для выполняющейся в памяти OLTP.

Соглашения о синтаксисе Transact-SQL

Синтаксис

 -- SQL Server, Azure SQL Database 

DROP FUNCTION [ IF EXISTS ] { [ schema_name. ] function_name } [ ,...n ]   
[;]
 -- Azure Synapse Analytics, Parallel Data Warehouse, Microsoft Fabric

DROP FUNCTION [IF EXISTS] [ schema_name. ] function_name
[;] 

Аргументы

IF EXISTS
Условно удаляет функцию только в том случае, если она уже существует. Доступно в SQL Server начиная с версии 2016 и в Базе данных SQL.

schema_name
Имя схемы, к которой принадлежит определяемая пользователем функция.

function_name
Имя удаляемой пользовательской функции или функций. Указание имени схемы является необязательным. Невозможно указать имя сервера и имя базы данных.

Замечания

При выполнении инструкции DROP FUNCTION произойдет сбой, если в базе данных существуют функции или представления Transact-SQL, созданные с ключевым словом SCHEMABINDING и содержащие ссылки на удаляемую функцию, или если база данных содержит вычисляемые столбцы, ограничения CHECK или DEFAULT, которые ссылаются на эту функцию.

При выполнении инструкции DROP FUNCTION произойдет сбой, если имеются вычисляемые столбцы, которые содержат ссылки на удаляемую функцию и которые были проиндексированы.

Разрешения

Для вызова инструкции DROP FUNCTION у пользователя должно быть как минимум разрешение ALTER на схему, которой принадлежит функция, или разрешение CONTROL на функцию.

Примеры

А. Удаление функции

В следующем примере fn_SalesByStore удаляется определяемая пользователем функция из Sales схемы в образце базы данных AdventureWorks2022. Создание этой функции описано в примере Б в статье CREATE FUNCTION (Transact-SQL).

DROP FUNCTION Sales.fn_SalesByStore;  

См. также

ALTER FUNCTION (Transact-SQL)
CREATE FUNCTION (Transact-SQL)
OBJECT_ID (Transact-SQL)
EVENTDATA (Transact-SQL)
sys.sql_modules (Transact-SQL)
sys.parameters (Transact-SQL)